我正在尝试编写一个函数,该函数返回列表中的所有字符串。
使用isinstance()方法和for循环,将字符串附加到新列表中,然后返回该列表。但是,该列表为空。
有趣的是,当我在函数之外使用相同的代码时,将返回正确的项目。但是在函数内部,什么也不会返回。
在函数内部:
mylist = [1,2,3,"xxx","bob"]
def check_string(mylist):
string_list = []
for item in string_list:
if isinstance(item,str):
string_list.append(item)
return string_list
check_string(mylist)
The output is an empty list!!!
Inside a function:
mylist = [1,2,3,"xxx","bob"]
string_list = []
for item in mylist:
if isinstance(item,str):
string_list.append(item)
print(string_list)
然后我得到['xxx','bob']
print语句返回正确的值,但函数不返回任何值。怎么了?
答案 0 :(得分:0)
变化不大。
mylist = [1,2,3,"xxx","bob"]
def check_string(mylist):
string_list = []
for item in mylist:
if isinstance(item,str):
string_list.append(item)
return string_list
请告诉我您是否要这样做。