【问题标题】:how to use functions inner variable in python如何在python中使用函数内部变量
【发布时间】:2019-08-20 19:47:43
【问题描述】:

我正在做一个从用户那里接收姓名然后搜索姓名的小脚本,如果找到则打印他/她的姓名,否则打印“未找到”。

def std_record():
print("1. Enter data.")
print("2. Search student")
user_input = int(input("Enter Choice: "))
if user_input == 1:
    name = input("Whats your name: ")
elif user_input == 2:
    search = input("Enter keyword: ")
    if search in name:
        print("data found: " + name +".")
    else:
        print("not found")
while True:
    std_record()

UnboundLocalError: 赋值前引用了局部变量 'name'

【问题讨论】:

  • 如果我在下面的回答有帮助,你介意点赞吗?我是新来的,这对我有很大帮助。谢谢!

标签: python-3.x function variables


【解决方案1】:

你需要在使用它们之前初始化字符串,无论是空字符串还是无

所以名字=“” 或名称 = 无

【讨论】:

    【解决方案2】:

    尝试初始化名称变量:

    name = None
    def std_record():
        print("1. Enter data.")
        print("2. Search student")
        user_input = int(input("Enter Choice: "))
        if user_input == 1:
            name = input("Whats your name: ")
        elif user_input == 2:
            search = input("Enter keyword: ")
            if name:
                print("data found: " + name +".")
            else:
                print("not found")
        while True:
    std_record()
    

    【讨论】:

    • 在这个程序中也遇到了同样的问题。
    • @sunnykumar 尝试设置 name = "Blank" 并检查是否 name != "Blank"
    猜你喜欢
    • 2019-11-19
    • 2023-02-04
    • 2021-11-13
    • 1970-01-01
    • 2015-12-12
    • 2014-03-01
    • 2018-07-16
    • 1970-01-01
    • 2022-11-27
    相关资源
    最近更新 更多