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

 更新时间:2020年08月17日 11:44:32   作者:songleo  
这篇文章主要介绍了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建议与技巧的资料请关注脚本之家其它相关文章!

相关文章

  • Pygame游戏开发之太空射击实战图像精灵下篇

    Pygame游戏开发之太空射击实战图像精灵下篇

    相信大多数8090后都玩过太空射击游戏,在过去游戏不多的年代太空射击自然属于经典好玩的一款了,今天我们来自己动手实现它,在编写学习中回顾过往展望未来,下面开始入门篇
    2022-08-08
  • Python 多线程共享变量的实现示例

    Python 多线程共享变量的实现示例

    这篇文章主要介绍了Python 多线程共享变量的实现示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • Pycharm新手教程(只需要看这篇就够了)

    Pycharm新手教程(只需要看这篇就够了)

    这篇文章主要介绍了Pycharm新手教程(只需要看这篇就够了),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06
  • Python光学仿真wxpython透镜演示系统初始化与参数调节

    Python光学仿真wxpython透镜演示系统初始化与参数调节

    这篇文章主要为大家介绍了Python光学仿真wxpython透镜演示系统的初始化与参数调节,同样在学习wxpython透镜演示系统的入门同学可以借鉴参考下,希望能够有所帮助
    2021-10-10
  • Python中pygal绘制雷达图代码分享

    Python中pygal绘制雷达图代码分享

    这篇文章主要介绍了Python中pygal绘制雷达图代码分享,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12
  • Python实现的石头剪子布代码分享

    Python实现的石头剪子布代码分享

    这篇文章主要介绍了Python实现的石头剪子布代码分享,本文和另一篇JavaScript实现的石头剪刀布游戏源码是姐妹篇,需要的朋友可以参考下
    2014-08-08
  • tensorflow的计算图总结

    tensorflow的计算图总结

    这篇文章主要介绍了tensorflow的计算图总结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • Python学习之日志模块详解

    Python学习之日志模块详解

    说到日志,我们完全可以想象为现实生活中的日记。日记是我们平时记录我们生活中点点滴滴的一种方法,而日志我们可以认为是 程序的日记 ,程序的日记是用来记录程序的行为。本文将详细介绍Python中的日志模块(logging),需要的可以参考一下
    2022-03-03
  • 梳理总结Python开发中需要摒弃的18个坏习惯

    梳理总结Python开发中需要摒弃的18个坏习惯

    大家好,今天给大家分享 18 个 Python 初学者常有的坏习惯,这些坏习惯不仅影响 Python 代码的可读性,而且 影响 Python 的运行性能,摒弃这些坏习惯并以 Pythonic 的方式编写代码,提高的不仅仅是你的代码质量,也给阅读代码的人留下好印象
    2022-01-01
  • python基于pygame实现飞机大作战小游戏

    python基于pygame实现飞机大作战小游戏

    这篇文章主要为大家详细介绍了python基于pygame实现飞机大作战小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11

最新评论