今天碰到一个奇怪的问题,在读txt的时候,报错'encoding' is an invalid keyword argument for this function。于是网上找了一下,这是版本的问题,如果是python2.7版本就会报错。可问题是我用的明明就是3.8.9版本,而且我复制到另外一个python文件中,又可以正常运行,奇了怪了
先来说说网上的解决办法吧,
导入import io,代码示例如下
with io.open('123.txt','r',encoding='utf-8') as f: lines = f.readlines()
这个方法我没试过,不过估摸应该是没有问题的。回到开头说的,为什么放另外一个python文件里又OK,这个又不行呢?顺着出错的根本寻找,既然是版本问题,顺着问题寻找可能性。最终找到了原因
是因为我导入了一个包
from os import *
我猜测是这个包导致python默认降了版本,最终改为
import os
问题解决。感觉很简单的问题,技术菜没办法,让大家见笑了