本帖最后由 笨鸟学飞 于 2020-10-24 22:02 编辑
spam = ['apples','bananas','tofu','cats'] #执行顺序1,初始化列表
def change(data):
length = len(spam) #执行顺序3,函数内外部变量混用可不是好习惯
s = ''
for i in range(length):
s = s + str(spam[i]) + ',' #这个str()函数多余了,本来列表内就是变量
s = s + 'and' +str(data[-1])
print(s) #打印变量S后函数结束,因为无返语句,默认返回None
change(spam) #执行顺序2,调用函数并传入参数列表spam
#========因此你想问的是什么?==========
a = change(spam)
print(a)
print(type(a))
#=========执行结果如下:
PS G:\Python作业> & C:/Users/QingMo/AppData/Local/Programs/Python/Python38-32/python.exe g:/Python作业/temp.py
apples,bananas,tofu,cats,andcats
apples,bananas,tofu,cats,andcats
None
<class 'NoneType'>
#=====如果加return语句===========
spam = ['apples','bananas','tofu','cats'] #执行顺序1,初始化列表
def change(data):
length = len(spam) #执行顺序3,变量混用可不是好习惯,length=4
s = ''
for i in range(length):
s = s + str(spam[i]) + ',' #这个str()函数多余了,本来列表内就是变量
s = s + 'and' +str(data[-1])
print(s) #打印变量S后函数结束,因为无返语句,默认返回None
return s
change(spam) #执行顺序2,调用函数并传入列表spam
#========因此你想问的是什么?==========
a = change(spam)
print(a)
print(type(a))
#=========执行结果如下============
PS G:\Python作业> & C:/Users/QingMo/AppData/Local/Programs/Python/Python38-32/python.exe g:/Python作业/temp.py
apples,bananas,tofu,cats,andcats
apples,bananas,tofu,cats,andcats
apples,bananas,tofu,cats,andcats
<class 'str'>