加入收藏 | 设为首页 | 会员中心 | 我要投稿 柳州站长网 (https://www.0772zz.cn/)- 基础存储、数据迁移、云安全、数据计算、数据湖!
当前位置: 首页 > 站长资讯 > 外闻 > 正文

不为人知的Python技巧

发布时间:2021-03-02 15:30:57 所属栏目:外闻 来源:互联网
导读:本例中,您可以看到空白字符n和t已被单个空格替换,而r已被完全删除。这是一个简单的例子,但是我们可以更进一步,使用unicodedata包和它的combining()函数来生成并进行映射,从而生成更大的重新映射表,我们可以使用它来删除字符串中的所有重音。 对迭代

本例中,您可以看到空白字符“n”和“t”已被单个空格替换,而“r”已被完全删除。这是一个简单的例子,但是我们可以更进一步,使用unicodedata包和它的combining()函数来生成并进行映射,从而生成更大的重新映射表,我们可以使用它来删除字符串中的所有重音。

对迭代器进行切片

如果您尝试对一个迭代器进行切片,您会得到一个TypeError,这说明生成器对象是不可下标访问的,但有一个简单的解决方案可以解决这个问题:
 

使用itertools.islice我们可以创建一个islice对象,它是一个会生成所需项的迭代器。需要注意的是,这将消耗slice开始之前的所有生成器项,以及islice对象中的所有项。

跳过可迭代对象的开始部分

有时您必须处理那些以您不想要的可变数量的行(如注释)开始的文件。itertools再次为这个问题提供了简单的解决方案:
 

这代码段只生成初始注释部分之后的行。如果我们只想在可迭代对象的开头丢弃一些项目(本例中是一些行),并且不知道有多少个项目,那么这种方法是很有用的。

只带有关键字参数(kwargs)的函数

在使用以下这样的函数时,创建只接受关键字参数的函数来提供(强制)更多的清晰性是很有帮助的:

(编辑:柳州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读