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]-----可以发现函数内部值的变化已经影响到了外部值的变化,所以是值的调用
""" 
相关推荐
Devin~Y5 分钟前
智慧物流+AIGC客服Java大厂面试:Spring Boot、Kafka、Redis、JVM与RAG Agent实战
java·jvm·spring boot·redis·spring cloud·kafka·rag
文心快码BaiduComate6 分钟前
Comate搭载MiniMax M3:支持超长百万上下文
前端·人工智能·后端
浩风祭月6 分钟前
React 18 并发特性实战:用 useTransition 和 useDeferredValue 优化列表搜索体验
前端·react native
WebInfra6 分钟前
TanStack Start 框架正式支持 Rsbuild
前端·javascript·前端框架
Demon1_Coder8 分钟前
智能体的自定义工具
java·linux·前端
AI 编程助手GPT8 分钟前
ChatGPT 新手入门与实战操作指南
开发语言·人工智能·git·python·chatgpt
老王以为10 分钟前
单仓库下的四十模块 —— React Monorepo 工程架构拆解
前端·react native·react.js
原创小甜甜14 分钟前
OOM 排查复盘:Hutool 序列化 Request 导致 Java Heap Space
java·开发语言·python
lichenyang45315 分钟前
鸿蒙路由研读:为什么公司项目用 HMRouterMgr 而不用原生 Navigation
前端