Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Hangman代码在访问其他文件时遇到问题_Python - Fatal编程技术网

Python Hangman代码在访问其他文件时遇到问题

Python Hangman代码在访问其他文件时遇到问题,python,Python,所以我为hangman做了一个程序,它可以访问一个输入文件,但是一旦我输入它,它就很难访问它 这是调用该文件的函数 def getWord(filename): print("Loading from file...") inputFile = open(filename, 'r') wordlist = inputFile.read().splitlines() print(len(wordlist) + " lines loaded.") return

所以我为hangman做了一个程序,它可以访问一个输入文件,但是一旦我输入它,它就很难访问它

这是调用该文件的函数

def getWord(filename):
    print("Loading from file...")
    inputFile = open(filename, 'r')
    wordlist = inputFile.read().splitlines()
    print(len(wordlist) + " lines loaded.")
    return wordlist


filename = input("What file will the words come from? ")
wordlist = getWord(filename)
theWordLine = random.choice(wordlist)
game(theWordLine)
这就是文件本身

person,Roger
place,Home
phrase,A Piece Of Cake
它给我的错误是

File "hangman.py' , line 77, in <module>
  wordlist = getWord(filename)
File "hangman.py' , line 10, in <module>
TypeError: unsupported operand type(s) for +: 'int' and 'str'
文件“hangman.py”,第77行,在
wordlist=getWord(文件名)
文件“hangman.py”,第10行,在
TypeError:不支持+:“int”和“str”的操作数类型

有人能帮我吗?

错误状态:
TypeError:不支持+:'int'和'str'的操作数类型。
。这意味着您不能将
+
int
类型和
str
类型一起使用。
len
函数返回一个
int
。因此,您需要将它转换为一个
str
,然后才能将它与另一个
str

它应该是
print(str(len(wordlist))+“lines loaded.”
而不是
print(len(wordlist)+“lines loaded.”


您可能还希望在注释中使用字符串格式。如果您使用的是Python3.6或更高版本,您可以尝试f-strings:
f'{len(wordlist)}行加载}

错误状态:
TypeError:不支持+:'int'和'str'的操作数类型。
。这意味着您不能将
+
int
类型和
str
类型一起使用。
len
函数返回一个
int
。因此,您需要将它转换为一个
str
,然后才能将它与另一个
str

它应该是
print(str(len(wordlist))+“lines loaded.”
而不是
print(len(wordlist)+“lines loaded.”

您可能还希望在注释中使用字符串格式。如果您使用的是Python3.6或更高版本,可以尝试f-strings:
f'{len(wordlist)}lines loaded}

print(len(wordlist)+“lines loaded.”
试图将
+
操作数应用于不同数据类型的变量,这会导致您的问题

您可以使用
print(“{}行已加载”).format(len(wordlist))
来避免这种情况。

print(len(wordlist)+“行已加载”)
试图将
+
操作数应用于不同数据类型的变量,这会导致您的问题


您可以使用
print(“{}行已加载”).format(len(wordlist))
来避免这种情况。

使用
print(len(wordlist),“行已加载”)
而不是
print(len(wordlist)+“行已加载”)
使用
print(len(wordlist),“行已加载”)
而不是
print(len(wordlist)+“行已加载”)

它与读取文件无关。读取错误:无法添加整数和字符串

为什么会出现这个错误?因为
len()
返回的是整数,而不是字符串。您可以将
len()
的返回转换为字符串,也可以只使用f字符串:

f'{len(wordlist)} lines loaded}'

它与读取文件无关。读取错误:无法添加整数和字符串

为什么会出现这个错误?因为
len()
返回的是整数,而不是字符串。您可以将
len()
的返回转换为字符串,也可以只使用f字符串:

f'{len(wordlist)} lines loaded}'

或者使用更好的字符串格式
打印({}行已加载。“.format(len(wordlist))
或者使用更好的字符串格式
打印({}行已加载。“.format(len(wordlist))