千家信息网

Python实用的技巧有哪些

发表于:2025-11-08 作者:千家信息网编辑
千家信息网最后更新 2025年11月08日,这篇文章主要讲解了"Python实用的技巧有哪些",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Python实用的技巧有哪些"吧!1. 列表推导式有人或
千家信息网最后更新 2025年11月08日Python实用的技巧有哪些

这篇文章主要讲解了"Python实用的技巧有哪些",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"Python实用的技巧有哪些"吧!

1. 列表推导式

有人或许以前听说过这些。Python中的一种编码模式十分常见,因此需要进行修改。使用for循环创建列表是列表推导的价值所在。

列表推导式可读且简洁,也确实需要花费一些时间来了解发生了什么。下面将深入研究是否可以解决这个问题。

创建列表时应考虑列表推导式。列表推导式从一组方括号开始。先不管语法,以便展示两种语言的相似之处

list_comp = [expression for itemin items]

任务是要替换一个for循环,该循环将项目添加到列表中。

new_list = [] for item in old_list:     new_list.append(item**2)

注:

  • 调用名为new_list is calledt

  • for循环遍历旧列表中的项目

  • 使用添加方法将item ** 2添加到新列表中

目前为止很简单。

列表推导如下所示

new_list = [item**2 for item inold_list]

注:

  • 将表达式item **2作为要添加到列表中的表达式,这首先出现在列表推导式中。

  • 之后的for循环是要迭代的循环

  • 将其括在方括号中并为其分配变量new_list意味着,为循环的每个项目将表达式item ** 2添加到new_list中。

没有附加方法或是不需要,一行代码正适合!为了选择要添加的内容,甚至可以添加条件语句。此功能还扩展到集合和词典!甚至可以使用嵌套的for循环编写列表推导式!

请注意,可能会出现过度使用的情况!仅当列表循环很简单并且明确要创建列表时,才会使用列表推导。

2.生成器表达式——节省内存使用量

当拥有大量数据集并需要对其进行迭代或从中获取结果,却无法将所有数据存储在内存中时,应想到生成器函数。除了不返回而为关键字yield进行切换操作,生成器函数非常像一个函数。

生成器函数创建了迭代器,而迭代器需要强制输出它所拥有的值。它们不会在列表或集合中存储对象。一次也只输出一项。这称为延迟循环。因此,读取大文件时使用生成器。

def gen(n):                                while True:         yield n         n += 1                                                      G = gen(3)     # starts at 3  print(next(G)) # 3  print(next(G)) # 4  print(next(G)) # 5  print(next(G)) # 6

注:

  • 创建函数gen

  • Yield关键字存储值n,一直保留到调用next()方法为止

  • 使用赋值运算符,将1加到n

  • 这是一个无限循环,并一直持续

  • 调用next()方法,它将继续输出值

现在,这些值不会被存储,只有在调用next()方法时才会跳出。生成器创建一个迭代器,然后依赖next()方法输出值。

当有一个大数据集并且想要流式传输数据而不会使内存溢出时,这将很有用。

3. 使用zip迭代两个对象

经常想迭代多个对象,以便能从每个对象中收集数据。Zip是允许执行此操作的函数!如果需要迭代充分理解文件名及其对应的链接,可以这样做。

for file_name, link in zip(names, links):     print(file_name, link)

这将同时进入两个对象,返回一个元组以及每个元组中的对应项。在循环中,将元组解压为单独的值file_name和link. zip()。可以根据需要选择任意数量的集合,但是当最短的集合用尽时它将停止。

通过本文提及的列表推导式,Zip函数可用于迭代同一对象中的成对元素。

例如:

differences = [next_el - elt for el, next_el in zip(items, items[1:])

4. 计数器——生成对象的计数

计数器是字典的一个子类,其中对象的元素是键,而对象中项目的计数是值。它对计算对象的数量有效。访问计数器时需要导入内置的collections模块。

假设要计算列表中所有出现的字符串。

import collections counts = Counter([ Fred ,  Samantha ,  Jean-Claude ,  Samantha ]) print(counts)

输出:

Counter({ Samantha : 2,  Fred :1,  Jean-Claude : 1})

计数器类的优点是可以对其进行更新,并且可以使用字典API来访问值。

from collections import Counter c = Counter( abcdaab )for letter in  abcde :     print(letter, : , c[letter])

输出:

a : 3 b : 2 c : 1 d : 1 e : 0

注:

  • 使用字符串" abcdaab"将c分配给Counter子类。计数器类提供每个字符的单独计数。c [item]可以像字典一样被访问。

  • for循环,用于迭代字符串"abcde",并为每个字符串分配letter。

  • 输入字符串字符,打印可变letter并可以像字典一样。每个字母的计数由c [letter]访问。

5. 链接多个集合

如需一次迭代多个集合,则itertools模块中的链接方法是实现这一目标的好方法。

for name in itertools.chain(first_name_list, second_name_list):    create_person(name)

在耗尽之前,这将迭代第一个集合,然后继续进行下一个,依此类推。

感谢各位的阅读,以上就是"Python实用的技巧有哪些"的内容了,经过本文的学习后,相信大家对Python实用的技巧有哪些这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

循环 迭代 对象 方法 函数 字符 生成 生成器 输出 字符串 数据 计数器 实用 技巧 字典 表达式 项目 存储 内存 内容 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 服务器硬盘安装在电脑上找不到 手机老是显示已连接到服务器 软件开发公司场地费用标准 吉林省信息网络安全合格证 如何加强结合部网络安全管理 软件开发的技术支持怎么写 5g时代呼唤新一代网络安全 西安网络技术学院 容易云创网络技术有限公司 数据库版本与平台选择 老君山民宿软件开发 U8C盘已满初始化数据库 国网软件开发技术架构 中小学学校网络安全教育计划 图书管理软件开发 山东做服务器的企业云主机 网络安全企业影响 新时代新媒体网络安全 盘龙区综合软件开发报价表 网络安全威胁对社会的影响 怎么配置bs架构的数据库 仓储软件开发的流程图 手游方舟怎么看服务器人数 下载存在数据库中的文件乱码 惠州征成网络技术公司 苹果6s显示无法激活服务器 如何测试小程序的服务器 广西南宁服务器托管 企业nas存储服务器 学生对网络安全应该怎样认识
0