我正在尝试将存储在CSV文件中的数字与2个数字进行比较,如下所示。
问题是我无法将其与其他数字进行比较而不添加' '它周围没有这种方式。
file = open('data.csv' , 'r')
reader = csv.reader(file)
for row in reader:
if '1400' <= row[0] <= '1920' and '50' <= row[1] <= '120' :
我认为数字在CSV文件中存储为字符串如果我没有弄错,我需要将这些数字转换为整数或双数,以便能够以我想要的方式使用它,任何种类如果这是一个愚蠢的问题,帮助会很棒,很抱歉。
提前致谢
答案 0 :(得分:1)
CSV是一种文本格式,因此从CSV文件读取的任何数据都将作为文本读取。您需要将文本转换为适合您程序的数据类型。
您可以使用<=
运算符在Python中比较字符串。但是,它会执行文本比较,例如在按字母顺序排列列表时使用。这是不是的数字比较。
忽略错误处理的需要,您可以像这样更正代码:
for row in reader:
if 1400 <= int(row[0]) <= 1920 and 50 <= int(row[1]) <= 120 :
答案 1 :(得分:0)
您可以通过将字符串包装在int()函数中将字符串转换为整数。所以你会有类似的东西:
worker
将来,请尝试在Google上搜索类似“将字符串转换为int python”的内容,然后您会更快地得到答案:)