好的,我在这里遇到的问题是我有这个 .txt 文件 Python 导入字典。
它所做的是从文本文件中获取值,这些值是这种特定格式的:
a 0.01
b 0.11
c 1.11
d 0.02
^(以代码格式,因为它不会像在 .txt 中那样堆叠它,而不是实际代码),然后将它们放入这样的字典中:
d = { 'a':'0.01', 'b':'0.11, 等....}
好吧,我正在使用它,以便它将用户输入的任何值(稍后在脚本中)更改为字典中定义的任何值。
问题是如果我尝试让它包含一个空间,它就是行不通的。
就像,我完成了字母,以及它们在 .txt 中的相应值,然后开始讨论符号:
例如:
& &
* *
(这样当输入字典时,当我让它打印翻译后的消息时会打印相应的值)(我可以改变它们,但我决定保持原样)
当我尝试让用户输入中的空格对应于已翻译消息中的空格或其他值时,就会出现问题。
我尝试在我的 .txt 中将一行留空,这样(空格)就是(空格)
但后来,当它试图加载 .txt 时,它给了我一个错误,说:“需要多个值来解压”
有人可以帮我吗?
编辑:根据要求添加代码。
TRvalues = {}
with open(r"C:\Users\Owatch\Documents\Python\Unisung Net Send\nsed.txt") as f:
for line in f:
(key, val) = line.split()
TRvalues[key] = val
if TRvalues == False:
print("\n\tError encountered while attempting to load the .txt file")
print("\n\t The file does not contain any values")
else:
print("Dictionary Loaded-")
示例文本文件:
a 0.01
b 0.11
c 1.11
d 0.02
e 0.22
f 2.22
g 0.03
h 0.33
i 3.33
j 0.04
k 0.44
l 4.44
m 0.05
n 0.55
o 5.55
p 0.06
q 0.66
r 6.66
s 0.07
t 0.77
u 7.77
v 0.08
w 0.88
x 8.88
y 0.09
z 0.99
当我尝试运行脚本时出现此错误:
Traceback (most recent call last):
File "C:/Users/Owatch/Documents/Python/Unisung Net Send/Input Encryption 0.02.py", line 17, in <module>
(key, val) = line.split()
ValueError: need more than 0 values to unpack
编辑:感谢大家投票!我现在已经不能提问了。
信不信由你,我确实知道这个网站的规则,并且在询问 Stack Overflow 之前做了研究。它对其他人也有帮助。多么美好的社区。希望回答的人没有投反对票。我很欣赏他们所做的。