美文网首页Python
python使用建议与技巧分享(二)

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

作者: 乐观的程序员 | 来源:发表于2020-12-30 19:42 被阅读0次

    这是一个系列文章,主要分享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使用建议与技巧分享(二)

        本文链接:https://www.haomeiwen.com/subject/pglhoktx.html