当前位置:
首页 > Python基础教程 >
-
python使用建议与技巧分享(二)
这篇文章主要介绍了python的使用建议与一些技巧的分享,对大家理解和学习python有所帮助,感兴趣的朋友可以了解下
这是一个系列文章,主要分享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建议与技巧的资料请关注其它相关文章!
原文链接:https://cloud.tencent.com/developer/article/1123060
栏目列表
最新更新
求1000阶乘的结果末尾有多少个0
详解MyBatis延迟加载是如何实现的
IDEA 控制台中文乱码4种解决方案
SpringBoot中版本兼容性处理的实现示例
Spring的IOC解决程序耦合的实现
详解Spring多数据源如何切换
Java报错:UnsupportedOperationException in Col
使用Spring Batch实现批处理任务的详细教程
java中怎么将多个音频文件拼接合成一个
SpringBoot整合ES多个精确值查询 terms功能实
SQL Server 中的数据类型隐式转换问题
SQL Server中T-SQL 数据类型转换详解
sqlserver 数据类型转换小实验
SQL Server数据类型转换方法
SQL Server 2017无法连接到服务器的问题解决
SQLServer地址搜索性能优化
Sql Server查询性能优化之不可小觑的书签查
SQL Server数据库的高性能优化经验总结
SQL SERVER性能优化综述(很好的总结,不要错
开启SQLSERVER数据库缓存依赖优化网站性能
uniapp/H5 获取手机桌面壁纸 (静态壁纸)
[前端] DNS解析与优化
为什么在js中需要添加addEventListener()?
JS模块化系统
js通过Object.defineProperty() 定义和控制对象
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比