作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
这是麻省理工学院的python项目问题之一,但它基本上是为python 2.x用户编写的,那么有什么办法可以修复以下代码以在最新的python 3中运行?
当前代码引发“ValueError: can't have unbuffered text I/O”
WORDLIST_FILENAME = "words.txt"
def load_words():
print("Loading word list from file...")
inFile = open(WORDLIST_FILENAME, 'r', 0)
# wordlist: list of strings
wordlist = []
for line in inFile:
wordlist.append(line.strip().lower())
print(" ", len(wordlist), "words loaded.")
return wordlist
最佳答案
来自 open
的文档字符串:
... buffering is an optional integer used to set the buffering policy. Pass 0 to switch buffering off (only allowed in binary mode) ...
所以改变 inFile = open(WORDLIST_FILENAME, 'r', 0)
到
inFile = open(WORDLIST_FILENAME, 'r')
,或到
inFile = open(WORDLIST_FILENAME, 'rb', 0)
如果您真的需要它(我对此表示怀疑)。
关于python - 我如何修复这个 "ValueError: can' t have unbuffered text I/O"in python 3?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45263064/
我是一名优秀的程序员,十分优秀!