小梁同学在学习过程中发现,有的函数处理可以直接进行赋值给变量(如:b = str(a)),而有的函数处理需要处理后再间接赋值(如,a.append(),具体例子见下方)。
第一种:可直接赋值给变量的函数
# 例一
a = 1
b = float(a)
print(a)
# 输出结果:1
print(b)
# 输出结果:1.0
# 例二
a = '1,2'
b = a.replace(',','#')
print(a)
# 输出结果:1,2
print(b)
# 输出结果:1#2
由此可见,此类函数/方法调用后不改变原有值,而是返回更新后的值,所以可直接赋值给变量。
第二种:不可直接赋值给变量
# 例一
a = [1,3]
b = a.append(4)
print(a)
# 输出结果:[1, 3, 4]
print(b)
# 输出结果:None
# 例二
a = [1,3]
a.append(4)
b = a
print(a)
# 输出结果:[1, 3, 4]
print(b)
# 输出结果:[1, 3, 4]
由此可见,此类方法调用后改变原有的值,而不返回任何值,所以需要间接赋值。
综上所述:
1、所有函数型(function(data)),不改变原有值,返回更新值,可直接赋值给变量。
2、部分方法型(<data>.method()),不改变原有值,返回更新值,可直接赋值给变量。
3、部分方法型(<data

本文探讨了Python中函数和方法的赋值行为,区分了直接赋值与间接赋值的情况。函数调用通常返回更新值,可直接赋值给变量,而某些方法如list的append等改变原对象且不返回新值,需间接赋值。深入理解这一区别有助于更好地掌握Python编程。
最低0.47元/天 解锁文章
2242

被折叠的 条评论
为什么被折叠?



