循环不会终止,因为temp变量始终会收到一个空字符串,该字符串永远不会为假。如何避免这种情况?
city_temp = []
temp = mean_temp.readline().strip().split(",")
while temp:
city_temp.append(temp)
temp = mean_temp.readline().strip().split(",")
答案 0 :(得分:1)
问题不是空字符串不是假的(它们是)。问题是['']
(一个包含空字符串的列表)不是错误的。为什么不将字符串读入变量并检查其是否为空,而不是立即将其拆分?
city_temp = []
line = mean_temp.readline().strip()
while line:
city_temp.append(line.split(','))
line = mean_temp.readline().strip()
答案 1 :(得分:-1)
看起来您的“临时”是一个列表,如果不为空,则其值为True。
您可以使用类似的东西吗?
for t in temp:
city_temp.append(t)
?