将列表中的数字与文本文件中的数字相乘?

时间:2016-08-25 14:04:35

标签: python python-3.x numbers

我目前正在尝试将列表中的数字与文本文件中的数字相乘,但我得到错误= Can't multiply sequence by non-int of type 'NonType'

有没有人有更好的方法来做到这一点?

text_file =open("read_it.txt", "r")
pricetxt=print(text_file.readlines()[2])
price1 = pricetxt*(items2[1])
print(price1)

1 个答案:

答案 0 :(得分:1)

print()返回无,您将在pricetxt()中保留它。您还需要将字符串结果转换为int(如果它是正确的数据)。另请注意,最好使用with语句打开文件,因为它会在块结束时自动关闭文件。

with open("read_it.txt") as text_file:
    try:
        price = int(text_file.readlines()[2])
    except ValueError:
        # do something else
    else:
        new_price = price * items2[1]

请注意,items2[1]也必须是整数。如果不是,则必须将其转换为整数,您可以在try后的pricetxt块中执行此操作。