python编程口诀_Python编程小技巧

原标题:Python编程小技巧

如何创建指定长度且有特定值的list

不推荐方式

推荐方式

4ec8a5d942434a9596ec8a2166f8bfcc.jpeg

其实,第一种方式一看就不符合DRY(Don’t Repeat Yourself)原则,稍微想想就知道还有更优雅的做法。如果是元组呢?只需要将[0]改成(0,)即可,千万不要忘记0后面的逗号。另外,这里不止支持数字,其实可以是任意对象组成的list或者tuple。例如:

afef5d7cd6f947d3b2ff682b2e2ed754.jpeg

如何连接字符串

不推荐方式

3683d8ce51774c76b49cc689f2c473f4.jpeg

推荐方式

ba1495a270db498bb3e22a304bf17729.jpeg

使用加号方式连接字符串,效率底下,因为会频繁的拷贝字符串和分配内存,比较耗时。但是使用join方式连接字符串,只需要分配一次内存,并将所有待连接的字符串拷贝到内存空间,效率更高。在我的电脑上,测试2个函数的耗时,当执行10000次时,前者耗时是后者约24倍,代码如下:

7b924ebe84f44843ba3ffa96066d051c.jpeg

如何合并字典

不推荐方式

944ae5b448124033adb01276afebedd8.jpeg

推荐方式

bd15a95acb464337a401ffefc7dc92a6.jpeg

前一种方式会将源字典dict1修改,有一定的副作用,如果不在乎源字典被修改,第一种方式更简洁一些。后一种方式不会修改源字典,没有副作用。如果有重复的key值,按从右到左的顺序覆盖,例如:

bc9fc9a8f71c4d38b1314495c0e00e64.jpeg

使用右边参数dict2的key值覆盖dict1的key值。通过内建函数dict,将2个字典作为参数传递给该函数,创建一个新字典。需要特别指出的是,第二个参数dict2需要加上2个星号,这里表示该参数是一个具名参数,并且类型是字典。因为dict函数创建字典时,可以接受多个参数,这是python函数支持可变参数的规定格式。

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

不推荐方式

4b04d67fd7f0411a91cf1242c6f7aadc.jpeg

推荐方式

a51154d41bfb4907981e482c90f1f6a1.jpeg

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

a6aaef267f4f42e5b699a101b1411fcd.jpeg

如何从list中随机采样元素

推荐方式

9ac84007855e4916a4a89c11e00d7ae3.jpeg

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

a37fb5c7f49c4629b87a11d76f9d1a20.jpeg

如何测试函数运行时间

不推荐方式

f790ebee008c4d028bef04cb76dec158.jpeg

推荐方式

33f31da009ab4486a48c6e53ff3e9da4.jpeg

联系我们

责任编辑:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值