如何在 python 中读取文件后将文件中的数字分配给变量?

How to assign numbers from a file to variables after reading the file in python?

例如,假设我在一个文件中有两个数字 2 和 3 (data.txt)。如何在读取文件时将这些数字分配给两个变量 a 和 b?

data.txt 在两行中有两个数字 2 和 3

我使用的代码是

file = open("data.txt", "r")
a=file.readlines(1)
b=file.readlines(2)

“readlines”函数 return 一个列表,不是字符串或整数。您需要告诉 Python 进行转换。这里有一个简单明了的解决方案:

file = open("data.txt", "r")
a=file.readlines(1)
b=file.readlines(2)
a2 = int(a[0])
b2 = int(b[0])
print(a2)

另一个答案适用于 2 行。但是如果以后要考虑加入更多的变量,下面的方法就干净多了。

with open("data.txt", "r") as fin:  # with operator automatically call the .close() function
  data = fin.read() # data -> "2\n3"

values = data.split("\n") # values -> [2, 3]
values = [int(x) for x in values] # convert all values to integer

a = values[0] # a -> 2
b = values[1] # b -> 3

以后如果想有更多的变量,只需要像下面这样多加几行就可以了

c = values[2]