我正在尝试比较 python 中的两个字符串列表。有些字符串是数字,但我不想将其用作数字,仅用于字符串比较。
我从文件中读取字符串并将它们放在这样的列表中:
def main():
inputFileName = 'BateCarteira.csv'
inputFile = open(inputFileName, "r")
bankNumbers = []
for line in inputFile:
values = line[0:len(line)-1].split(';');
if (len(values[0]) > 3):
bankNumbers.append(''+values[0])
但是,当我尝试打印数字时,它打印如下:
1,20091E+11
打印代码:
print 'not in the list: ' + bankNumber
outputFile.write(bankNumber + '-')
我该怎么做才能让 python 永远不会将字符串转换为 int?
对不起我的英语:D
最佳答案
Python 永远不会将字符串转换为数字,除非您尝试像这样的操作:
s = "1.2"
a = float(s)
所以我猜你的 .csv 文件里面有字符串“1,20091E+11”。还要注意小数点是一个逗号。因此,如果您尝试将其转换为 float ,转换将会失败。
关于python - Python 中的自动字符串到数字转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1462427/