Python3中的NameError

时间:2019-06-23 03:41:50

标签: python python-3.x

xx = str(23-Jun-2019 [8:41:44])

Traceback (most recent call last):  
  File "<pyshell#4>", line 1, in <module>  
    xx = str(23-Jun-2019 [8:41:44])  
NameError: name 'Jun' is not defined 

我正在Windows 7计算机中使用Python 3。

4 个答案:

答案 0 :(得分:2)

您的代码恰好以最奇怪的方式工作:)

此(xx = str(23-Jun-2019 [8:41:44]))解释为:

xx = str(23 - Jun - 2019[8:41:44])

期望得到23减去Jun(一个变量),然后从2019年开始切分。 因为它从左到右工作,所以到达23,发现它是正确的,继续到Jun,并尝试找到一个名为Jun的变量。

因为找不到,它给出了NameError

您可能想做的是这样:

xx = "23-Jun-2019 [8:41:44]"

Python的str可以接受任何东西,包括数字,然后将它们转换为可以使用print()之类的东西输出的东西。通过将它们放在文字中,您可以使其显示在那里文字

答案 1 :(得分:2)

很遗憾,您不能这样做。要声明字符串,请使用双引号。如果您要使用日期和时间,我还建议使用datetime内置模块。

xx = "23-Jun-2019 [8:41:44]"

答案 2 :(得分:1)

它将-解释为减法,并将Jun解释为变量。

您可能想做

xx = "23-Jun-2019 [8:41:44]"

如果您希望xx为字符串。

答案 3 :(得分:-1)

1)。在这里,您通过23-Jun-2019 [8:41:44]str()转换为字符串。在转换期间,str()Jun视为variable

2)。而且,如果删除了Jun,那么其余部分也是PYTHON的无效语法。

3)。使用" "遇到这种情况时。并且使用datetime模块而不是[8:41:44]

xx = "23-Jun-2019 [8:41:44]"