Python中相见恨晚的技巧


Posted in Python onApril 13, 2021

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

1. 交换变量值

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

a, b = 5, 10
print(a, b)   //5, 10
a, b = b, a
print(a, b)   //10, 5

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

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

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

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

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

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

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

from collections import Counter

a = 'abcdefg'
b = 'adcbgfb'
print(Counter(a) == Counter(b))

5. 反转字符串、列表

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

a = 'dadabjdnakdmnkafad'
print(a[::-1])

num = 1343453535
print(int(str(num)[::-1]))

a = [1,3,554,64,2]
print(a[::-1])

6. 转置二维数组

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

7. 链式比较

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

b = 6
print(4 < b < 7)
print(1 == b < 9)

8. 三元运算符

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

b = 'B'
c = 'C'
flag = True
a = b if flag else c

9.链式函数调用

def product(a, b):
   return a * b

def add(a, b):
   return a + b

b = True
print((product if b else add)(5 ,7))

10. for-else 语法

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

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

11. 合并字典

d1 = {'a': 1}
d2 = {'b': 2}

print(**d1, **d2)  # python3.5支持

print(dict(d1.items() | d2.items()))

d1.update(d2)
print(d1)

12. 移除列表中重复元素

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

13. **kwargs

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

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

dictionary = {'a': 1, 'b': 2}

def func(**kwargs)
  for key in kwargs:
     print('key:', key, 'value:',kwargs[key])

14. 列表推导式

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

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

15. map函数

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

以上就是Python中相见恨晚的技巧(记得收藏)的详细内容,更多关于python技巧的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python 深入理解yield
Sep 06 Python
浅谈Python的垃圾回收机制
Dec 17 Python
python tensorflow基于cnn实现手写数字识别
Jan 01 Python
Python cookbook(数据结构与算法)让字典保持有序的方法
Feb 18 Python
Python生成器定义与简单用法实例分析
Apr 30 Python
详解Python3的TFTP文件传输
Jun 26 Python
解决tensorflow测试模型时NotFoundError错误的问题
Jul 26 Python
DataFrame:通过SparkSql将scala类转为DataFrame的方法
Jan 29 Python
详解python编译器和解释器的区别
Jun 24 Python
Python:合并两个numpy矩阵的实现
Dec 02 Python
python opencv角点检测连线功能的实现代码
Nov 24 Python
Python中的程序流程控制语句
Feb 24 Python
利用python做表格数据处理
python glom模块的使用简介
Apr 13 #Python
Python的flask接收前台的ajax的post数据和get数据的方法
Python使用sql语句对mysql数据库多条件模糊查询的思路详解
python实现简单反弹球游戏
python中Tkinter 窗口之输入框和文本框的实现
Apr 12 #Python
python opencv常用图形绘制方法(线段、矩形、圆形、椭圆、文本)
You might like
php读取文件内容的方法汇总
2015/01/24 PHP
PHP简单获取视频预览图的方法
2015/03/12 PHP
PHP编程开发怎么提高编程效率 提高PHP编程技术
2015/11/09 PHP
PHP实现十进制数字与二十六进制字母串相互转换操作示例
2018/08/10 PHP
javascript 限制输入和粘贴(IE,firefox测试通过)
2008/11/14 Javascript
Extjs中常用表单介绍与应用
2010/06/07 Javascript
javascript学习笔记(九)javascript中的原型(prototype)及原型链的继承方式
2011/04/12 Javascript
jQuery判断iframe中元素是否存在的方法
2013/05/11 Javascript
Jquery实现网页跳转或用命令打开指定网页的解决方法
2013/07/09 Javascript
javascript判断复选框是否选中的方法
2015/10/16 Javascript
Bootstrap实现弹性搜索框
2016/07/11 Javascript
详解React中的组件通信问题
2017/07/31 Javascript
用Vue.extend构建消息提示组件的方法实例
2017/08/08 Javascript
Mui使用jquery并且使用点击跳转新窗口的实例
2017/08/19 jQuery
js canvas实现画图、滤镜效果
2018/11/27 Javascript
Vant的安装和配合引入Vue.js项目里的方法步骤
2018/12/05 Javascript
JS闭包原理与应用经典示例
2018/12/20 Javascript
原生JavaScript实现弹幕组件的示例代码
2020/10/12 Javascript
vue-resource 拦截器interceptors使用详解
2021/01/18 Vue.js
[47:03]完美世界DOTA2联赛PWL S3 access vs LBZS 第一场 12.20
2020/12/23 DOTA
python 实现上传图片并预览的3种方法(推荐)
2017/07/14 Python
python 列表,数组,矩阵两两转换tolist()的实例
2018/04/04 Python
解决python 未发现数据源名称并且未指定默认驱动程序的问题
2018/12/07 Python
Python实现网站表单提交和模板
2019/01/15 Python
Python 常用模块 re 使用方法详解
2019/06/06 Python
对Django项目中的ORM映射与模糊查询的使用详解
2019/07/18 Python
python的scipy实现插值的示例代码
2019/11/12 Python
python scatter函数用法实例详解
2020/02/11 Python
python和php学习哪个更有发展
2020/06/17 Python
Book Depository亚太地区:一家领先的国际图书零售商
2019/05/05 全球购物
Swanson中国官网:美国斯旺森健康产品公司
2021/03/01 全球购物
伊索寓言教学反思
2014/05/01 职场文书
读书小明星事迹材料
2014/05/03 职场文书
公司财务人员岗位职责
2015/04/14 职场文书
使用css样式设计一个简单的html登陆界面的实现
2021/03/30 HTML / CSS
PHP中国际化的字符串排序和比较对象详解
2021/08/23 PHP