为了账号安全,请及时绑定邮箱和手机立即绑定

测试参数是否为特定值

测试参数是否为特定值

慕侠2389804 2023-08-22 15:22:55
是否可以使用if其他函数来测试变量是否具有在特定参数中传递的特定值?例如,这里有一行代码,用于检测文本字符串的语言。我需要进行测试以确定文本是否为英文。此信息在参数内传递lang(如果是lang=en英语)。如果lang不是en变量,language我将执行英语翻译。我们的目标并不是为了提高效率而翻译英文文本。googletrans或者也许直接将英语翻译成英语而不进行测试会更有效?什么会更有效 - 从英语翻译成英语或执行我想要的检查。我将不得不翻译数千个字符串。from googletrans import Translatorwords = ['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)
查看完整描述

1 回答

?
慕尼黑的夜晚无繁华

TA贡献1864条经验 获得超6个赞

测试具体值

关于术语的一些注意事项:

  • 变量...“命名的自由对象”,例如wordsworddetected以下

  • 参数...函数定义中使用的函数输入,例如text在检测文档中

  • 参数...传递给函数/方法的特定值,例如下面word是传递给的参数translate.detecct

  • 属性、成员...类/实例/对象/...的成员变量,例如lang和是实例confidence的属性。Detected

OP 要求参数变量参数,但实际上需要的是属性。下次请使用正确的术语以避免混淆。

它如何工作的一个例子:

from googletrans import Translator


words = ['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,很可能涉及一些网络操作。因此,您应该自己测量性能,最好是在目标系统上测量性能。


查看完整回答
反对 回复 2023-08-22
  • 1 回答
  • 0 关注
  • 1521 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信