python使用建议与技巧分享(二)


Posted in Python onAugust 17, 2020

这是一个系列文章,主要分享python的使用建议和技巧,每次分享3点,希望你能有所收获。

1 如何在if语句中检测多个条件

不推荐方式

flag1 = 1
flag2 = 0
flag3 = 0

if flag1 == 1 or flag2 == 1 or flag3 == 1:
print 'ok'

推荐方式

flag1 = 1
flag2 = 0
flag3 = 0

if 1 in (flag1, flag2, flag3):
print 'ok'

可以看到,前一种方式重复代码太多,不推荐。后一种写法更简洁、易读。另外,其实也可以通过any函数实现,如下:

if any((flag1, flag2, flag3)):
print 'ok'

2 如何从list中随机采样元素

import random


all_data = [num for num in range(100)]
sample_data = random.sample(all_data, 20)
print sample_data
# [71, 25, 58, 79, 70, 69, 93, 29, 11, 30, 40, 81, 12, 48, 91, 21, 83, 42, 38, 31]

这里是从100个元素中,随机采样20个元素。可以看到,借助random模块的sample函数可以很轻易实现采样功能。python的random模块很有意思,大家感兴趣可以看看,能实现很多有趣的功能。比如可以轻易实现“洗牌”功能:

import random


order_list = range(10)
print order_list
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
random.shuffle(order_list)
print order_list
# [3, 5, 9, 0, 8, 7, 1, 2, 6, 4]

3 如何测试函数运行时间

不推荐方式

import time


def func1():
time.sleep(2)


begin_time = time.time()
func1()
passed_time = time.time() - begin_time
print passed_time
# 2.00099992752

推荐方式

import time
from timeit import timeit


def func1():
time.sleep(2)


print timeit(stmt="func1()",
setup="from __main__ import func1",
number=1)
# 2.00122451254

借助python的timeit模块,可以很轻易的测试出函数运行时间。在不知道timeit模块之前,我就是用前一种方式测试函数运行时间的,别笑。

以上就是python使用建议与技巧分享(二)的详细内容,更多关于python建议与技巧的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
Python学习pygal绘制线图代码分享
Dec 09 Python
Python实现可自定义大小的截屏功能
Jan 20 Python
使用django-crontab实现定时任务的示例
Feb 26 Python
Python3.6笔记之将程序运行结果输出到文件的方法
Apr 22 Python
Django项目开发中cookies和session的常用操作分析
Jul 03 Python
python下载微信公众号相关文章
Feb 26 Python
python实时检测键盘输入函数的示例
Jul 17 Python
Python 基于wxpy库实现微信添加好友功能(简洁)
Nov 29 Python
python ubplot使用方法解析
Jan 10 Python
Python如何用filter函数筛选数据
Mar 05 Python
导致python中import错误的原因是什么
Jul 01 Python
解决Python保存文件名太长OSError: [Errno 36] File name too long
May 11 Python
详解python方法之绑定方法与非绑定方法
Aug 17 #Python
如何利用python之wxpy模块玩转微信
Aug 17 #Python
深入了解Python 方法之类方法 & 静态方法
Aug 17 #Python
详解如何在PyCharm控制台中输出彩色文字和背景
Aug 17 #Python
python如何操作mysql
Aug 17 #Python
详解python 内存优化
Aug 17 #Python
浅谈如何使用python抓取网页中的动态数据实现
Aug 17 #Python
You might like
php实现的仿阿里巴巴实现同类产品翻页
2009/12/11 PHP
PHP仿博客园 个人博客(1) 数据库与界面设计
2013/07/05 PHP
ThinkPHP多表联合查询的常用方法
2020/03/24 PHP
解决form中action属性后面?传递参数 获取不到的问题
2017/07/21 PHP
Laravel程序架构设计思路之使用动作类
2018/06/07 PHP
php闭包中使用use声明变量的作用域实例分析
2018/08/09 PHP
Javascript 八进制转义字符(8进制)
2011/04/08 Javascript
jquery入门—数据删除与隔行变色以及图片预览
2013/01/07 Javascript
JS获取下拉列表所选中的TEXT和Value的实现代码
2014/01/11 Javascript
推荐6款基于jQuery实现图片效果插件
2014/12/07 Javascript
AngularJS实现的根据数量与单价计算总价功能示例
2017/12/26 Javascript
Javascript数组及类数组相关原理详解
2020/10/29 Javascript
解决Vue大括号字符换行踩的坑
2020/11/09 Javascript
在漏洞利用Python代码真的很爽
2007/08/26 Python
压缩包密码破解示例分享(类似典破解)
2014/01/17 Python
Python3使用requests发闪存的方法
2016/05/11 Python
详谈python http长连接客户端
2017/06/12 Python
python游戏开发之视频转彩色字符动画
2019/04/26 Python
python如何给字典的键对应的值为字典项的字典赋值
2019/07/05 Python
python django 原生sql 获取数据的例子
2019/08/14 Python
python获取全国城市pm2.5、臭氧等空气质量过程解析
2019/10/12 Python
使用Python内置模块与函数进行不同进制的数的转换
2020/04/26 Python
keras得到每层的系数方式
2020/06/15 Python
python/golang 删除链表中的元素
2020/09/14 Python
几款Python编译器比较与推荐(小结)
2020/10/15 Python
通过Python pyecharts输出保存图片代码实例
2020/11/25 Python
matplotlib 画动态图以及plt.ion()和plt.ioff()的使用详解
2021/01/05 Python
Python命令行参数argv和argparse该如何使用
2021/02/08 Python
CSS3中31种选择器使用方法教程
2013/12/05 HTML / CSS
阿联酋团购网站:Groupon阿联酋
2016/10/14 全球购物
银行办理业务介绍信
2014/01/18 职场文书
团队拓展活动总结
2014/08/27 职场文书
二年级语文下册复习计划
2015/01/19 职场文书
小学生2015教师节演讲稿
2015/03/19 职场文书
安全学习心得体会范文
2016/01/18 职场文书
高性能跳频抗干扰宽带自组网电台
2022/02/18 无线电