python - Python NameError:名称“名称”未定义函数
问题描述
我正在制作这个程序,提示用户输入他们的名字并从那里为他们生成一个用户名,如下所示:
Please enter your name: Stack Overflow
Your username is sove001
到目前为止,这是我的代码:
def get_name():
name = str(input("Please enter your name: "))
return name
def process_name(name):
first_letter = name[0]
first_space = name.find(" ")
three_surname = name[first_space+1:first_space+4]
nick_name = first_letter + three_surname
final_name = nick_name.lower()
return final_name
def zero_extend_number(number, length):
number_str = str(number)
padded_number = number_str.rjust(length, '0')
return padded_number
def generate_username(number, number_length):
get_name()
process_name(name)
zero_extend_number(number, length)
completed_name = final_name + padded_number
print("Your username is: {}".format(completed_name))
generate_username(1,4)
运行它会给出以下输出:
NameError: name 'name' is not defined
我不确定我的代码有什么问题,我错过了什么吗?
解决方案
您没有使用的返回值get_name()
def generate_username(number, number_length):
name = get_name()
推荐阅读
- parsing - 从 jinja2 ast 生成代码
- javascript - BASIC Javascript 数组函数,问题是已知的,但我无法理解解决方案
- swift - SwiftKueryPostgresql 连接失败并出现错误“线程 1:EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0)”
- wpf - WPF:在不改变其形式的情况下拉伸路径
- sql - 为什么不能限制类型?
- bourbon - Neat 2.0 Grid - 媒体查询
- jquery - 通过 jquery 将 JSON 转换为特定的 JSON 格式
- python - 找到特定的行和列并将其转换为 INT
- javafx - JavaFX TreeTableView 在行单元格中设置自定义节点
- python - 在开始学习编码/一门新语言时,有什么好的方法可以保护自己免受系统损坏?