Python 笔记/技巧/课程/细微差别

python 笔记/技巧/课程/细微差别

我发表了一篇 c++++ 技巧文章,我想写更多我知道的技巧,因为它们中的大多数都是用 python 和 js 编写的,尽管我已经用 c++ 编写了很多代码,但无论如何它们都在这里,我将从基本python语法的琐碎事情开始,但有一些初学者不知道的事情,我用星号标记了⭐️:

1. 列表

项目数据结构的有序集合可以有多种类型aa = [“苹果”, ‘d’, 3, 9.3]

初始化:

a = [1, 2]a = 列表()a = 列表([2, 3])[0]*5concat_list = list1 + list2

访问元素⭐️

0 … n-1 和 -n … -1

功能

len(列表1)a.append(值)a.insert(index, value):在索引处插入值并将所有内容推到右侧a.pop():返回最终值并将其删除a.remove(value):如果该值不存在,您将得到一个 valueerrora.clear()a.reverse():原地反转a.sort():修改原始b =排序(a):不修改原始

切片⭐️

访问列表子数组的简单方法

slicedlist = a[1:5]: 从索引 1 开始,到索引 5 停止,索引 5 被排除slicedlist = a[:3]: 从 0 … 2slicedlist = a[1:3]:从 1 到 2slicedlist = a[:]: 复制整个列表slicedlist = mylist[::2]:步进索引,每隔第二项,从第一项开始,基本上 i=0;islicedlist = mylist[::-1]:反转列表的好方法

复制列表

1.浅拷贝

a = [1, 2, 3]b = a

修改一个也会修改另一个,因为两者都是相同的内存分配

2.深拷贝⭐️

3种方式:

立即学习“Python免费学习笔记(深入)”;

b = a.copy()b = 列表(a) b = a[:]

列表理解

我将从一些基本的列表理解开始,但它们很快就会变得不那么琐碎。

values = [x+1 for x in range(10)] -> [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

– 值 = [x for x in range(51) if x % 2 == 0]

values = [word for word in values if len(word) > 1 and word[0] == 'a' and word[-1] == 'y']# or, a nicer way is ⭐️values = [    string    for string in values    if len(string) > 1    if string[0] == 'a'    if string[-1] == 'y']

登录后复制

嵌套列表理解⭐️

展平列表列表或二维矩阵
嵌套列表理解:展平矩阵(列表列表)⭐️

示例:矩阵 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

values = [    number for row in matrix for number in row]# first for loop then the next for loop is inside the first and so on

登录后复制其他列表推导式:

values = [    "even" if x % 2 == 0     else "odd"     for x in range(10)]

登录后复制

此语法 ->
“even” if x % 2 == 0 else “odd” 在python中很多地方都是有效的,你也可以把它放在变量中,这基本上是一个三元运算符,但更详细

⭐️ 为了理解任何列表理解,请始终查看表达式的左侧和右侧,任何嵌套循环都是从左到右,当 if else 位于 for 循环的左侧时,我们检查什么值我们是否要根据 if else 条件插入,而当 for 循环位于右侧时,我们尝试从列表中过滤

例如创建 5x5x5 列表:⭐️

values = [[[num+1 for num in range(5)] for _ in range(5)] for _ in range(5)]

登录后复制

⭐️ 寻找最外面的for循环,左边的内容都会被添加到values[]数组中,这个语法的含义:for _ in range(5)就是​​我想做的事情这个for循环的左边5次(因为我不关心每次迭代时迭代器变量的值)

推导式中的函数:值 = [x**2 表示值中的 x,如果有效(x)]

字典理解

如果我们有pair = [(“a”, 1), (“b”, 2)]:对或元组的列表

-> my_dict = {k:v for k, v inpair}:值解包,要使其工作,成对的每个“对”必须恰好有 2 个实体

集合理解

让 nums = [1, 2, 3, 1, 3, 2, 4, 2, 1, 3]

unique_nums = {x for x in nums}:python 会知道这应该是一个集合,因为你没有任何键

一旦有时间我就会写这篇文章,但你仍然可以在这里查看它们:advancedpythonconcepts 这是我的 git 存储库,当我第一次学习 python 概念时,我在其中记录了它们。一旦我有时间,我会根​​据这个仓库写这篇文章……

以上就是Python 笔记/技巧/课程/细微差别的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2195052.html

(0)
上一篇 2025年2月25日 20:52:42
下一篇 2025年2月25日 20:53:02

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 成品网站python在线观看有哪些?

    本文推荐十个学习Python3的优质资源,涵盖国内外知名网站和平台。包括菜鸟教程、廖雪峰Python3教程、Python官方文档等内容详尽、权威可靠的学习资源,以及实验楼、Codecademy等注重实践和项目学习的平台,还有Python12…

    2025年3月28日
    100
  • 数毛社赞《刺客信条:影》视觉效果 画面有巨大提升

    digital foundry盛赞《刺客信条:影》的视觉效果!凭借全新anvil引擎的强大性能,《刺客信条:影》在画面表现上实现了系列史无前例的突破。 本作是系列首个运用光线追踪技术的作品,引入了光追反射和全局光照(RTGI),大幅提升了游…

    2025年3月28日
    100
  • 如何在C++中使用机器学习库来增强数据分析?

    在 c++++ 中使用机器学习库可以增强数据分析,具体步骤包括:选择适合需求的机器学习库,如 armadillo、eigen 和 tensorflow lite for microcontrollers。加载和预处理数据,选择机器学习算法,…

    2025年3月28日
    100
  • C++ 如何支持移动应用程序的离线功能

    在 c++++ 中开发离线应用程序涉及以下步骤:1. 使用 fstream 库持久化数据;2. 使用缓存机制(例如 unordered_map)存储常见数据;3. 使用异步网络请求处理在线操作。这样可以确保应用程序即使在没有互联网连接的情况…

    2025年3月28日
    100
  • c语言编译器怎么使用

    使用 C 语言编译器需要以下步骤:1. 选择编译器(如 GCC、Clang 或 Visual C++);2. 安装编译器;3. 编写 C 程序(.c 文件);4. 使用编译命令(如 gcc filename.c -o output_file…

    2025年3月28日
    100
  • c#全局变量怎么定义

    全局变量在 C# 中被定义为在整个应用程序中可访问的变量。定义语法为:[修饰符] 类型 变量名 [= 初始值],其中修饰符定义访问级别(public、internal、protected、private),类型指定数据类型,变量名遵循 C#…

    2025年3月28日
    100
  • c#程序集怎么使用

    C# 程序集是包含代码、数据和元数据的类型和资源集合。使用程序集涉及引用、创建程序集对象、获取类型、创建对象和调用方法。 C# 程序集的使用 什么是程序集? 程序集是 .NET 框架中的一组相关的类型和资源的集合。它们是独立的、可部署的单元…

    2025年3月28日
    100
  • 在Linux上使用Swagger有哪些最佳实践

    本文介绍在Linux环境下优化Swagger使用的最佳实践,涵盖安装配置、Docker部署、性能调优、安全策略以及文档协作等方面,旨在提升Swagger的效率、安全性及易用性。 一、安装与配置 首先,确保系统已安装Java运行环境(JRE)…

    2025年3月28日
    100
  • Python数据库操作:必须使用ORM吗?

    Python数据库操作:ORM并非唯一选择 许多Python开发者习惯使用ORM(对象关系映射)工具,例如SQLAlchemy,来操作数据库。 但一个常见问题是:是否必须为每个数据库表都创建对应的ORM映射?尤其面对大量表时,这种方法显得冗…

    2025年3月28日
    100
  • CentOS中GitLab的数据库如何选择

    在centos系统上安装和配置gitlab时,数据库的选择至关重要。gitlab兼容多种数据库,但postgresql和mysql(或mariadb)最为常用。本文将分析数据库选择因素,并提供详细的安装和配置步骤。 数据库选择指南 选择数据…

    数据库 2025年3月28日
    100

发表回复

登录后才能评论