使用函数时可以使用文本吗?还是只有数字?

首先我要说的是,我对编程非常陌生,我很确定这就像我第四次坐下来学习东西,所以好吧,我什至不确定这个问题听起来是否正确。


所以我在 YouTube 上观看 CS Dojo 的 Python 初学者教程,我正在观看第三个视频,它是关于函数的。观看教程时,我会经常暂停视频,并尝试进行一些实验,以真正理解我正在处理的内容。所以当我玩弄数字时一切都很顺利。像这儿:


def function(x):

    return x+5

a = function(10)

print(a)

(不知道我是否粘贴好代码,抱歉)


但后来我尝试用文字做一些事情,看看是否可行:


def function(name):

    return ("Hi ")

b = function(Oskar)

print(b)

但事实并非如此,我收到这样的错误:


NameError: name 'Oskar' is not defined

这些代码只适用于数字吗?还是我做错了什么?我想理解这一点,所以我希望有人向我解释一下,考虑到我是初学者并且不理解程序员在这里使用的很多单词。


一只甜甜圈
浏览 51回答 4
4回答

一只斗牛犬

name = "oskar"def function(name):   return ("Hi " + name)b = function(name)print(b)Oskar 不是字符串,而是未定义的变量。

斯蒂芬大帝

Oskar是一个变量。 'Oskar'和"Oskar"是字符串(注意引号)。换句话说,以下任何一项都可以:b = function('Oskar')b = function("Oskar")my_name = 'Oskar' b = function(my_name)my_name = input('What is your name? ') b = function(my_name)(当然,还有无数其他例子。)

蓝山帝景

不带引号的 Oskar 被视为标识符而不是字符串。使用“奥斯卡”或“奥斯卡”字符串始终必须封装在双引号 ("") 或单引号 ('') 中def function(name):    return ("Hi " + name)b = function("Oskar")print(b)或者用这个,以后就真的派上用场了def function(name):    return (f"Hi {name}")b = function("Oskar")print(b)

牧羊人nacy

当您输入Osakarpython 解释器时,它需要一个在您的情况下未定义的变量。请注意,它Oskar与 不同'Oscar'。第一个是变量(必须首先定义)。而后者是一个string.即使你使用了 sting,'Oscar'你也不能将它与你的函数一起使用。因为+在字符串和整数之间不起作用。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python