小编Fra*_*eau的帖子

写入然后读取以 latin1 编码的文件中的字符串

这里有 2 个代码示例,Python3:第一个使用 latin1 编码写入两个文件:

s='On écrit ça dans un fichier.'
with open('spam1.txt', 'w',encoding='ISO-8859-1') as f:
    print(s, file=f)
with open('spam2.txt', 'w',encoding='ISO-8859-1') as f:
    f.write(s)
Run Code Online (Sandbox Code Playgroud)

第二个读取具有相同编码的相同文件:

with open('spam1.txt', 'r',encoding='ISO-8859-1') as f:
    s1=f.read()
with open('spam2.txt', 'r',encoding='ISO-8859-1') as f:
    s2=f.read()
Run Code Online (Sandbox Code Playgroud)

现在,打印 s1 和 s2 我得到

On écrit ça dans un fichier.
Run Code Online (Sandbox Code Playgroud)

而不是最初的“On écrit ça dans un fichier”。

怎么了 ?我也尝试过 io.open 但我错过了一些东西。有趣的是,我对 Python2.7 及其 str.decode 方法没有这样的问题,现在它已经消失了......

有人可以帮助我吗?

python io latin1

6
推荐指数
1
解决办法
2万
查看次数

Python 列表中的 and 运算符

我在 Python 中发现了一些非常奇怪的行为。我的一位学生在尝试查找属于两个列表的元素时犯了某种错误,他写道:

list1 and list2
Run Code Online (Sandbox Code Playgroud)

奇怪的行为是 Python 3 没有触发任何错误! list1 and list2实际上有一个值为list2

这有什么已知的原因吗?

python operators python-3.x

2
推荐指数
1
解决办法
571
查看次数

标签 统计

python ×2

io ×1

latin1 ×1

operators ×1

python-3.x ×1