一直以来,Python因其强大的语言表示能力和丰富数据类型,可以在语法上玩出很多精炼有效的代码,今天我们来总结7种Python的编程技巧,可以用在平时的编程中,提高可读性、易用性和程序效率的提升。
1. 快速交换变量值
- x, y = 1, 2
- x, yy = y, x
通过以上代码可以简单的实现变量之间的数据交换。
因为在Python中,变量不直接存储值,而是引用一个内存地址,所以我们交换变量时,只是交换了引用的地址。
我们还可以通过阅读Python的源码 ceval.c,其中的ROT_TWO、ROT_THREE、ROT_FOUR这些指令可以直接交换两个变量、三个变量、四个变量的值。
2. 合并列表为字符串
- str_list = ['hello', 'world', 'good']
- str1 = "".join(str_list)
该方法比传统的 "字符串1"+"字符串2"的方式效率更高,原因在于通过+号对字符串进行连接,每次都会产生新的对象,内存开销变大了。而join不会。
通过字符串的 join方法,我们可以将一个列表中的所有字符串元素拼接起来,形成一个新的字符串。
3. 拆分字符串为列表
- str1 = 'hello world good'
- str_list = str1.split()
和join方法所对应的是split方法,作用是根据标识符分割字符串,生成一个新的列表。
4. 字典合并
- a = {'a': 1, 'b': 2}
- b = {'b': 3, 'c': 4}
- x = {**a, **b}
- print(x)
通过以上方式可以最简单的合并两个字典的内容。
5. 删除字符串两端的无用字符
- str1 = " 测试 "
- str2 = "///测试///"
- print(str1.strip())
- print(str2.strip("/"))
6. 找出列表中出现最多次数的元素
- list1 = [6, 1, 3, 4, 2, 2, 3, 1, 5, 5, 3]
- print(max(set(list1), key = list1.count))
该方法用到大量内置方法,效率比较高。
7. 初始化列表时快速填充元素
- a = [0] * 10
- print(a)
通过本方法可以快速填充元素数量,省去了挨个初始化列表的过程。
总结
以上七种Python的编程技巧旨在抛砖引玉,平常在编程过程中,还有大量的技巧等着我们去发掘并使用,我觉得所谓的编程技巧不是为了炫技,而是深入研究语言之后得出的一种必然结果,导致我们在写代码时会用到这些最优解去解决问题,而技巧本身也是带有明显的语言特征的,当我们熟悉了Python语言之后,也自然会理解类似的技巧为什么要以这样的方式存在。