Python中相见恨晚的技巧

 话不多说,直接开干,攒了很久!

成都创新互联公司是一家专注于网站制作、成都网站设计与策划设计,察哈尔右翼中旗网站建设哪家好?成都创新互联公司做网站,专注于网站建设十多年,网设计领域的专业建站公司;建站业务涵盖:察哈尔右翼中旗等地区。察哈尔右翼中旗做网站价格咨询:18982081108

1. 交换变量值

这个应该比较简单,但是日常用很容易忽略。

 
 
 
  1. a, b = 5, 10 
  2. print(a, b)   //5, 10 
  3. a, b = b, a 
  4. print(a, b)   //10, 5 

 2. 将列表中所有元素组合成字符串

这个其实也是一个基本语法

 
 
 
  1. a = ['python', 'java', 'c++', 'go'] 
  2. print(','.join(a))  //python,java,c++,go 

 3. 查找列表中频率最高的值

感觉用 Python 刷算法题是不是很爽?

 
 
 
  1. a = [1, 1, 1, 2, 3, 3, 3, 3, 4, 4, 4] 
  2. print(max(set(a), key = a.count)) 

 4. 检查两个字符串是不是由相同字母打乱顺序组成

 
 
 
  1. from collections import Counter 
  2.  
  3. a = 'abcdefg' 
  4. b = 'adcbgfb' 
  5. print(Counter(a) == Counter(b)) 

 5. 反转字符串、列表

这个用 Java 也是一句话就可以实现

 
 
 
  1. a = 'dadabjdnakdmnkafad' 
  2. print(a[::-1]) 
  3.  
  4. num = 1343453535 
  5. print(int(str(num)[::-1])) 
  6.  
  7. a = [1,3,554,64,2] 
  8. print(a[::-1]) 

 6. 转置二维数组

 
 
 
  1. origin = [['a', 'b'], ['c', 'd'], ['e', 'f']] 
  2. transposed = zip(*origin) 
  3. print(list(transposed )) 

 7. 链式比较

这个比较符合数学上的比较习惯

 
 
 
  1. b = 6 
  2. print(4 < b < 7) 
  3. print(1 == b < 9) 

 8. 三元运算符

其实 Python 中是没有三元运算符的,不过我们可以用另外一种方式替代:

 
 
 
  1. b = 'B' 
  2. c = 'C' 
  3. flag = True 
  4. a = b if flag else c 

 9.链式函数调用

 
 
 
  1. def product(a, b): 
  2.    return a * b 
  3.  
  4. def add(a, b): 
  5.    return a + b 
  6.  
  7. b = True 
  8. print((product if b else add)(5 ,7)) 

 10. for-else 语法

注意不是 if-else,而是 for 循环可以使用 else:

 
 
 
  1. a = [1, 2, 3, 4, 5] 
  2. for el in a: 
  3.     if(el == 0) 
  4.        print('找到 0 了') 
  5. else: 
  6.     print('没有找到 0') 

 11. 合并字典

 
 
 
  1. d1 = {'a': 1} 
  2. d2 = {'b': 2} 
  3.  
  4. print(**d1, **d2)  # python3.5支持 
  5.  
  6. print(dict(d1.items() | d2.items())) 
  7.  
  8. d1.update(d2) 
  9. print(d1) 

 12. 移除列表中重复元素

 
 
 
  1. items = [2,2,3,4,1] 
  2. print(list(set(items))) 

 13. **kwargs

可变长参数,是一个字典。

词典对象前面的双星号可以让你把该词典的内容作为命名参数输入到函数中。词典的秘钥是参数名,值是传递给函数的值。你甚至不需要称它为 kwargs!

 
 
 
  1. dictionary = {'a': 1, 'b': 2} 
  2.  
  3. def func(**kwargs) 
  4.   for key in kwargs: 
  5.      print('key:', key, 'value:',kwargs[key]) 

 14. 列表推导式

可以用一行代码完全列表中的数据操作

 
 
 
  1. numbers = [1, 2, 3, 4, 5, 6] 
  2. y = [x for x in numbers if x % 2 == 0] 
  3. print(y)   //[2, 4, 6] 

 15. map函数

 
 
 
  1. x = [1, 2, 3] 
  2. y = map(lambda x : x + 1 , x) 
  3. print(y)  //[2, 3, 4] 

 【编辑推荐】

  1. 在Ubuntu Linux上安装Windows 10的最简单方法
  2. 9个Linux 常用查看系统硬件信息命令(实例详解)
  3. 一文告诉你为什么有那么多人在炒币?
  4. 推荐 10 个标星 100 K 的 GitHub 开源项目
  5. 甚至连Excel都落于下风!WPS这些功能你都知道吗

当前文章:Python中相见恨晚的技巧
本文URL:http://www.hantingmc.com/qtweb/news40/218040.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联