测试参数是否为特定值

是否可以使用if其他函数来测试变量是否具有在特定参数中传递的特定值?


例如,这里有一行代码,用于检测文本字符串的语言。我需要进行测试以确定文本是否为英文。此信息在参数内传递lang(如果是lang=en英语)。如果lang不是en变量,language我将执行英语翻译。


我们的目标并不是为了提高效率而翻译英文文本。googletrans或者也许直接将英语翻译成英语而不进行测试会更有效?什么会更有效 - 从英语翻译成英语或执行我想要的检查。我将不得不翻译数千个字符串。


from googletrans import Translator


words = ['Many', 'like', 'name', 'kas', 'jauni burti']


translate = Translator()

for language in words:

    print(translate.detect(language))

结果


Detected(lang=en, confidence=1.0)

Detected(lang=en, confidence=1.0)

Detected(lang=en, confidence=0.95300263)

Detected(lang=lv, confidence=0.43629345)

Detected(lang=lv, confidence=1.0)


慕侠2389804
浏览 1579回答 1
1回答

慕尼黑的夜晚无繁华

测试具体值关于术语的一些注意事项:变量...“命名的自由对象”,例如words,word或detected以下参数...函数定义中使用的函数输入,例如text在检测文档中参数...传递给函数/方法的特定值,例如下面word是传递给的参数translate.detecct属性、成员...类/实例/对象/...的成员变量,例如lang和是实例confidence的属性。DetectedOP 要求参数、变量和参数,但实际上需要的是属性。下次请使用正确的术语以避免混淆。它如何工作的一个例子:from googletrans import Translatorwords = ['Many', 'like', 'name', 'kas', 'jauni burti']translate = Translator()for word in words:    detected = translate.detect(word)    print(detected)    if detected.lang == "en":        print("   ","English")    else:        print("   ","not English!")# print(dir(detected))注意,dir返回传递的参数的所有可用属性。表现根据文档,googletrans使用了Google Translate Ajax API,很可能涉及一些网络操作。因此,您应该自己测量性能,最好是在目标系统上测量性能。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python