我正在使用 python 中的字符串,我遇到了一个我无法解释的奇怪问题。 我的代码:
print(tuple_data[11])
potting_time = tuple_data[11].split("_")[1].removesuffix('min')
print(potting_time)
if potting_time == '0':
print('is 0')
else:
print('else')
print(type(potting_time))
print(len(potting_time))
输出
Material=This_Omin
O
else
<class 'str'>
1
但是,如果我从
0
复制输出 print(potting_time)
并用它替换 '0'
处的 if potting_time == '0':
并自己写 ''
,则输出为“is 0”。
我想过 ' '
但 len() 是 1
您发布的代码将不会执行,因为有一个
IndentationError
。不管怎样,你的问题是你正在检查 0
字符,但实际上输入(然后输出)只包含 O
字母,这显然是一个不同的字符。
仔细查看您的输入
Material=This_Omin
。您正在测试 min 之前的字符是否为 0
,而实际上它是 O
因此,要更正您的代码并获得您期望的结果,请将代码行
if potting_time == '0':
更改为 if potting_time == 'O':
。