在python代码中使用.txt文件中的值



我有点迷失了如何在我的python文件

中使用外部.txt

文件中的常量值File.txt:

email=value1
phone=value2
name=value3

我想在我的python文件中使用这些值

我已经试过了:

Data = open('file.txt', 'r')
data1= Data.read(email)
print(data1)

但是它没有按预期工作,预期输出是"Value1"。但是我得到一个错误,如果我只做Data.read(),我得到:

email=value1
phone=value2
name=value3

我如何获得每个值分别在我的python代码中使用它们?

我不知道你到底在找什么,但这里有一些东西可能会帮助你:

# Open the file for read
Data = open('file.txt', 'r')
# Reading the data from file
data1 = {}
for line in Data.readlines():
key, val = line.strip().split("=")  # strip() removes "n" at the end of each line
data1[key] = val                    # Placing key,val in dictionary

# Using the data
email = data1['email']
# Don't forget to close the file
Data.close()

试试这个:

with open('file.txt', 'r') as file:
data1 = dict(zip([i.strip().split('=') for i in file.readlines() if i]))
print(data1['email'])

输出:

value1

摘自@U12-Forward, working,并试图描述我们正在做的事情:

with open('test.txt', 'r') as f:
data = dict([i.split('=') for i in f.read().splitlines()])
print(data["email"]) # value1
print(data['phone']) # value2

我们正在做的是,使用f.read()读取文件并将f.read()从换行符(n)分割成列表并循环该列表,然后再次将每一行与=分开,并制作list,然后最后制作dict

如果你很难理解,你可以把这些行分开,这样更容易理解:

with open('test.txt', 'r') as f:
read=f.read()
data={}
for i in read.splitlines():
x=i.split("=")
data.update(dict([x]))
print(data["email"]) # value1
print(data['phone']) # value2

另外:

你可以使用,修改和做任何事情:

data["email"]="test@.."
print(data["email"]) # test@..
email=data["email"]
# Now you can use this email variable as your python variable.

最新更新