简体   繁体   English

发生异常:TypeError 'builtin_function_or_method' object is not iterable

[英]Exception has occurred: TypeError 'builtin_function_or_method' object is not iterable

So I am following along with some beginner level projects and I am currently working on a hangman game.所以我正在关注一些初学者级别的项目,我目前正在开发一个刽子手游戏。 I have researched this error and understand that im failing to call a function and probably missing () but i have reviewed the code and cant quite see where it would or what exactly is going wrong我已经研究了这个错误并了解我未能调用 function 并且可能缺少 () 但我已经查看了代码并且不能完全看到它会在哪里或到底出了什么问题

import random
from words import words 
import string 

def get_valid_word(words):
    word = random.choice(words) 
    while "-" in word or " " in word:
        word = random.choice(words)
    
    return word.upper
    #randomly selects a word from our list until we get a vadlid one to use for the game

def hangman():
    word = get_valid_word(words)
    word_letters = set(words) #letters in the word
    alphabet = set(string.ascii_uppercase)
    used_letters = set() # what the user has guessed

    while len(word_letters) > 0:
       # letters used
       
        print('You have used these letters: ' ' '.join(used_letters))

        #what current word is (ie W - R D)
        word_list = [letter if letter in used_letters else '-' for letter in word]
        print('Current word: ', ' '.join(word_list))

        user_letter = input('Guess a letter: ').upper()
        if user_letter in alphabet - used_letters:
            used_letters.add(user_letter)
            if user_letter in word_letters:
                word_letters.remove(user_letter)

        elif user_letter in used_letters:
            print('You have already guessed this letter')

        else:
            print('Invalid character. Please try again.')

                

hangman()

the error is with line 25 word_list = [letter if letter in used_letters else '-' for letter in word]错误在于第 25 行word_list = [letter if letter in used_letters else '-' for letter in word]

I've tried putting () everywhere to be honest i just cant find the mistake.老实说,我已经尝试将 () 放在任何地方,我只是找不到错误。

Missing parenthesis: return word.upper => return word.upper() – rochard4u 5 hours ago缺少括号:return word.upper => return word.upper() – rochard4u 5 小时前

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 显示TypeError:'builtin_function_or_method'对象在Odoo中不可迭代 - showing TypeError: 'builtin_function_or_method' object is not iterable in Odoo python “类型错误:‘builtin_function_or_method’ object 不可迭代” - python "TypeError: 'builtin_function_or_method' object is not iterable" TypeError:“ builtin_function_or_method”不可迭代 - TypeError: 'builtin_function_or_method' is not iterable 'builtin_function_or_method' object 不可迭代 - 'builtin_function_or_method' object is not iterable 收到TypeError:类型为“ builtin_function_or_method”的对象没有len() - Getting typeerror: object of type 'builtin_function_or_method' has no len() TypeError:'builtin_function_or_method'对象没有属性'__getitem__' - TypeError: 'builtin_function_or_method' object has no attribute '__getitem__' typeerror'builtin_function_or_method'对象没有属性'__getitem__' - typeerror 'builtin_function_or_method' object has no attribute '__getitem__' TypeError:'builtin_function_or_method'类型的对象没有len() - TypeError: object of type 'builtin_function_or_method' has no len() TypeError:“ builtin_function_or_method”对象无法下标 - TypeError: 'builtin_function_or_method' object is unsubscriptable 类型错误:'builtin_function_or_method' 对象不可下标 - TypeError: 'builtin_function_or_method' object is not subscriptable
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM