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实现探测socket和web服务示例
Mar 28 Python
Python获取Linux系统下的本机IP地址代码分享
Nov 07 Python
在Python的while循环中使用else以及循环嵌套的用法
Oct 14 Python
python模块简介之有序字典(OrderedDict)
Dec 01 Python
python交互式图形编程实例(二)
Nov 17 Python
python实现kNN算法
Dec 20 Python
python实现控制COM口的示例
Jul 03 Python
Python PO设计模式的具体使用
Aug 16 Python
Python 矩阵转置的几种方法小结
Dec 02 Python
PyInstaller运行原理及常用操作详解
Jun 13 Python
python 装饰器的基本使用
Jan 13 Python
基于Python 函数和方法的区别说明
Mar 24 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横向重复区域显示二法
2008/09/25 PHP
php在页面中调用fckeditor编辑器的方法
2011/06/10 PHP
PHP后台实现微信小程序登录
2018/08/03 PHP
JSON+JavaScript处理JSON的简单例子
2013/03/20 Javascript
js opener的使用详解
2014/01/11 Javascript
jquery取消选择select下拉框示例代码
2014/02/22 Javascript
nodejs教程之制作一个简单的文章发布系统
2014/11/21 NodeJs
JavaScript中Function()函数的使用教程
2015/06/04 Javascript
JavaScript对数组进行随机重排的方法
2015/07/22 Javascript
jquery带有索引按钮且自动轮播切换特效代码分享
2015/09/15 Javascript
微信小程序 toast 详解及实例代码
2016/11/09 Javascript
js插件实现图片滑动验证码
2020/09/29 Javascript
jQuery实现的上传图片本地预览效果简单示例
2018/03/29 jQuery
Vue实现点击时间获取时间段查询功能
2020/08/21 Javascript
详解vue-cli3使用
2018/08/14 Javascript
vue 的 solt 子组件过滤过程解析
2019/09/07 Javascript
[04:16]DOTA2英雄梦之声_第09期_斧王
2014/06/21 DOTA
python 七种邮件内容发送方法实例
2014/04/22 Python
Python中subprocess的简单使用示例
2015/07/28 Python
Django中Forms的使用代码解析
2018/02/10 Python
selenium+python 对输入框的输入处理方法
2018/10/11 Python
python自动化测试之异常及日志操作实例分析
2019/11/09 Python
python+OpenCV实现图像拼接
2020/03/05 Python
Python任务自动化工具tox使用教程
2020/03/17 Python
最新Python idle下载、安装与使用教程图文详解
2020/11/28 Python
We Fashion荷兰:一家国际时装公司
2018/04/18 全球购物
卡拉威高尔夫官方网站:Callaway Golf
2020/09/16 全球购物
什么是符号链接,什么是硬链接?符号链接与硬链接的区别是什么?
2014/01/19 面试题
甲方资料员岗位职责
2013/12/13 职场文书
学校安全教育制度
2014/01/31 职场文书
学生通报表扬范文
2015/05/04 职场文书
办公室规章制度范本
2015/08/04 职场文书
感恩教育主题班会
2015/08/12 职场文书
维护民族团结心得体会2016
2016/01/15 职场文书
深入理解Pytorch微调torchvision模型
2021/11/11 Python
vue选项卡切换的实现案例
2022/04/11 Vue.js