python面试题4: Python是按引用调用还是按值调用(难度--简单)

文章目录

题目

Python是按引用调用还是按值调用?

回答

这题主要是考试对于python数据类型的认知。

1.首先对于不可变对象,字符,元组,数字往往是按引用进行调用,示例如下:

python 复制代码
def add(s):
  s=s+'odd'
s='o'  
add(s)  
print(s) 
"""输出结果:
'o'-----从这里可以看出函数中的是一个新的变量,并将 s 的引用指向它 
"""

2.对于可变对象,如列表往往是通过值进行调用,我们在函数内部进行修改会回馈给外部的列表变量,示例如下:

python 复制代码
def add(s):
  s.append(4)
s=[1,2,3]  
add(s)  
print(s)
"""输出结果:
[1, 2, 3, 4]-----可以发现函数内部值的变化已经影响到了外部值的变化,所以是值的调用
""" 
相关推荐
野犬寒鸦2 分钟前
从零起步学习并发编程 || 第六章:ReentrantLock与synchronized 的辨析及运用
java·服务器·数据库·后端·学习·算法
wenzhangli72 分钟前
ooderA2UI BridgeCode 深度解析:从设计原理到 Trae Solo Skill 实践
java·开发语言·人工智能·开源
HalvmånEver5 分钟前
Linux:线程互斥
java·linux·运维
rainbow688912 分钟前
深入解析C++STL:map与set底层奥秘
java·数据结构·算法
灵感菇_16 分钟前
Java 锁机制全面解析
java·开发语言
indexsunny16 分钟前
互联网大厂Java面试实战:Spring Boot微服务在电商场景中的应用与挑战
java·spring boot·redis·微服务·kafka·spring security·电商
wazmlp00188736929 分钟前
python第三次作业
开发语言·python
娇娇乔木29 分钟前
模块十一--接口/抽象方法/多态--尚硅谷Javase笔记总结
java·开发语言
saber_andlibert41 分钟前
TCMalloc底层实现
java·前端·网络
逍遥德42 分钟前
如何学编程之01.理论篇.如何通过阅读代码来提高自己的编程能力?
前端·后端·程序人生·重构·软件构建·代码规范