Python 功能不正常 运行
Python functions not running correctly
我编写了这段代码来将字符串转换为大写和小写,但是当我调用我的函数时,它没有 运行。
# take the input for the string
string = input("Enter any string: ")
def string_upper(up):
return up.upper()
print("Uppercase Output: ", string_upper(string))
def string_lower(low):
return low.lower()
print("Lowercase Output: ", string.lower(string))
if __name__ == "__main__":
string_upper(up)
string_lower(low)
知道如何解决这个问题吗?
错误是:NameError: name 'up' is not defined
在您的代码中,您正在调用 string_upper(up)
但 up
未在任何地方定义,这就是您收到错误的原因。同样的问题是 string_lower()
.
另一个问题是您从 string_upper()
和 string_lower()
returning 但没有在任何地方使用 return 值。除此之外,在 return 语句之后的这两个函数中还有一个 print 语句。因此,这些打印语句永远不会执行,输出中也不会打印任何内容。
如果只想打印输入的大小写,可以修改如下函数-
def string_upper(s):
print("Uppercase Output: ", s.upper()) # Only printing the values and not returning
def string_lower(s):
print("Lowercase Output: ", s.lower()) # Same as string_upper
请注意 lower()
和 upper()
不带任何参数。要调用这些函数,您应该这样做 -
if __name__ == "__main__":
s = input("Enter any string: ")
string_upper(s) # the functions will print, so no need to capture return values
string_lower(s)
对于像大写或小写这样的简单转换,您可以完全跳过函数,只需执行 -
if __name__ == "__main__":
s = input("Enter any string: ")
print("Uppercase Output: ", s.upper())
print("Lowercase Output: ", s.lower())
您遇到的一个问题是您在打印输出之前return输入一个值,尝试先打印该值,然后return输入一个值。
return 将阻止函数中的其余代码 运行...
当你在函数中 return 时,这意味着函数已经结束。因此,要打印结果,您可以在 main
中打印值 returned
string = input("Enter any string: ")
def string_upper(up):
return up.upper()
def string_lower(low):
return low.lower()
if __name__ == "__main__":
print("Uppercase Output: ",string_upper(up))
print("Lowercase Output: ",string_lower(low))
我编写了这段代码来将字符串转换为大写和小写,但是当我调用我的函数时,它没有 运行。
# take the input for the string
string = input("Enter any string: ")
def string_upper(up):
return up.upper()
print("Uppercase Output: ", string_upper(string))
def string_lower(low):
return low.lower()
print("Lowercase Output: ", string.lower(string))
if __name__ == "__main__":
string_upper(up)
string_lower(low)
知道如何解决这个问题吗?
错误是:NameError: name 'up' is not defined
在您的代码中,您正在调用 string_upper(up)
但 up
未在任何地方定义,这就是您收到错误的原因。同样的问题是 string_lower()
.
另一个问题是您从 string_upper()
和 string_lower()
returning 但没有在任何地方使用 return 值。除此之外,在 return 语句之后的这两个函数中还有一个 print 语句。因此,这些打印语句永远不会执行,输出中也不会打印任何内容。
如果只想打印输入的大小写,可以修改如下函数-
def string_upper(s):
print("Uppercase Output: ", s.upper()) # Only printing the values and not returning
def string_lower(s):
print("Lowercase Output: ", s.lower()) # Same as string_upper
请注意 lower()
和 upper()
不带任何参数。要调用这些函数,您应该这样做 -
if __name__ == "__main__":
s = input("Enter any string: ")
string_upper(s) # the functions will print, so no need to capture return values
string_lower(s)
对于像大写或小写这样的简单转换,您可以完全跳过函数,只需执行 -
if __name__ == "__main__":
s = input("Enter any string: ")
print("Uppercase Output: ", s.upper())
print("Lowercase Output: ", s.lower())
您遇到的一个问题是您在打印输出之前return输入一个值,尝试先打印该值,然后return输入一个值。
return 将阻止函数中的其余代码 运行...
当你在函数中 return 时,这意味着函数已经结束。因此,要打印结果,您可以在 main
中打印值 returnedstring = input("Enter any string: ")
def string_upper(up):
return up.upper()
def string_lower(low):
return low.lower()
if __name__ == "__main__":
print("Uppercase Output: ",string_upper(up))
print("Lowercase Output: ",string_lower(low))