Python面试题_第 (2) 章
2021/10/20 14:10:16
本文主要是介绍Python面试题_第 (2) 章,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
文章目录
- 1. 序列赋值和lambda形参缺省参数
- 2. 不使用中间变量交换a和b的值
- 3. 何时执行 try-except-else-finally 的 else部分
- 4. 输入一个字符串,然后以倒叙的方式打印出来
- 5. 如何在一个函数内部修改全局变量
- 6.字典如何删除键以及如何合并字典
1. 序列赋值和lambda形参缺省参数
-
题目
分析一下代码的输出,并给出解释和原因
-
分析
- Python中有序列赋值,赋值的顺序从左到右. 所以第一个式子,先给
i = 1
,然后x[1] = 2
,所以打印出来的x = [0,2]
- 第二个 因为
y[j]
先赋值,所以这里的y[0] = 0
,所以结果是y = [0,4]
- Python中有序列赋值,赋值的顺序从左到右. 所以第一个式子,先给
-
分析
- 不管是正常的函数,或者是lambda函数,当有缺省参数的时候,一定要在最后面
- 缺省参数的后面不能有非缺省参数,但是可以有
**kwargs
2. 不使用中间变量交换a和b的值
-
解法1 原地交换赋值
-
解法2 使用和以及差进行计算
-
使用异或来进行计算
3. 何时执行 try-except-else-finally 的 else部分
-
解析
except
是在捕获异常的时候会执行else
是在没有异常的时候,try
模块执行完毕之后会执行- 如果
try
模块里直接return
了,那么else将不会再执行 - 无论
try
或者except
或者else
模块是否执行,是否return
,finally
最后总会执行
4. 输入一个字符串,然后以倒叙的方式打印出来
实现方式
- 字符串切片
str[::-1]
- 使用循环遍历
- 使用列表的
reverse()
方法- 使用递归
- 使用
reduce
- 使用
pop
方法
5. 如何在一个函数内部修改全局变量
-
解析
- 全局变量可以在局部作用域内直接使用,不需要额外的声明
- 全局变量如果要在局部作用域内修改,就要用
global
关键字去声明 - 全局变量如果没有
global
进行声明,然后在局部作用域内直接赋值,那么它就相当于是创建了一个和全局变量同名的局部变量
6.字典如何删除键以及如何合并字典
-
删除键的方法
- 通过
del dic[key]
的方式删除莫个键值对,del dic
删除整个字典 - 通过
dic.pop(somekey)
的方式,删除对应的键值对,并且把删除的键值对的值进行返回 - 通过
dic.popitem()
的方式随机删除一个键值对,并且将这个键值对进行返回,空字典将报错 - 通过
dic.clear()
的方式清空字典,此时字典是一个空字典
- 通过
-
del dic[key] 以及 del dic
-
dic.pop(somekey)
-
dic.popitem()
-
dic.clear()
这篇关于Python面试题_第 (2) 章的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-14获取参数学习:Python编程入门教程
- 2024-11-14Python编程基础入门
- 2024-11-14Python编程入门指南
- 2024-11-13Python基础教程
- 2024-11-12Python编程基础指南
- 2024-11-12Python基础编程教程
- 2024-11-08Python编程基础与实践示例
- 2024-11-07Python编程基础指南
- 2024-11-06Python编程基础入门指南
- 2024-11-06怎么使用python 计算两个GPS的距离功能-icode9专业技术文章分享