Python常用数据类型的基本操作

Python原生数据类型主要有Number、String、Byte、Boolean、None、List、Tuple、Set、Dict这九种,这篇文章主要讲一下字符串、列表、元祖、集合、字典这五种,剩下的四种大家可以自己了解一下。

初始化一个字符串,方便后面在字符串上做一些操作。

字符串的索引,需要注意的是索引下标从0开始

字符串的切片,以冒号分隔首尾索引位置,是[start:end]结构,注意不包含end对应元素;冒号左边不写入索引表示从头开始,同理右边不写入索引表示截取到字符串末尾。

还可以利用切片结合负索引实现翻转字符串。

查找,利用find方法查询元素时,会返回在字符串第一次出现的下标,未找到会返回-1。

替换,replace可以实现字符串中元素的替换,比如将’tang’替换成空格。

去空格,使用strip方法可以删除一个字符串首尾的空格,然后也支持指定要删除内容。

切割,split方法可以根据元素切割字符串,并存入列表;如果不输入参数,会直接将原字符串存入列表。

分隔,利用join方法可以将一个字符串作为分隔符,分隔另一个字符串。

利用%向字符串中传入参数,%s传入字符串、%d传入整数、%f传入浮点数,且可以控制小数点后的位数。

也可以利用format向字符串中传入参数,且不需要在意参数类型。

利用反斜杠对字符串进行转义。

同样初始化一个列表,然后方便对列表做一系列操作。

首先同样是列表的索引,列表也支持负索引。

再拓展一下带有间隔的切片,字符串同样适用,就是在end之后再加上一个双引号,用来写入切片的间隔,这才是切片最完整的结构。

利用index方法可以获取某个元素在列表中的位置索引,未找到的则会报错。

用join方法将列表中的各个元素合并为字符串。

  • 1、append:将一个元素添至列表尾部
  • 2、insert:将一个元素插入至指定位置
  • 3、extend:将一个列表的所有元素都添加至另一个列表中
  • 4、+:将两个列表合并成一个新列表

  • 1、pop:从列表指定位置删除元素,并将其返回。如果没有指定索引,pop()返回最后一个元素,并从列表中删去。

  • 2、remove:从列表中删去指定元素,没有则会报错。
  • 3、del:也是利用索引删去列表中的某部分。

  • 1、reverse:就地倒排列表中的元素。

  • 2、reversed:函数对列表进行反转,并返回一个新的迭代器,需要用list转换
  • 3、切片结合负索引

  • 1、sort:对列表中的元素就地进行排序。

  • 2、sorted:函数对列表进行排序,形成一个新列表
  • 3、利用lambda自定义函数

这两种方法默认为升序,通过参数reverse可以更改排序方式

sort和reverse这类就地处理列表的操作,针对可变的列表是可以的,但如果是不可变的元祖,只能用sorted和reversed这两种方式。

  • 1、利用切片直接赋值,浅拷贝
  • 2、copy方法,浅拷贝
  • 3、deepcopy方法,深拷贝

深拷贝和浅拷贝的区别是因为它涉及数据结构,口头描述不容易理解,网上有很多插图来解释博客,你可以了解一下。

[En]

The difference between deep copy and shallow copy because it involves data structure, oral description is not easy to understand, there are many illustrations on the Internet to explain the blog, you can learn about it.

元组和列表非常相似,有一种相似的密切关系,那就是列表中的很多操作也适用于元组,比如索引、切片等,但也有一些不同,这里主要谈谈元组的特殊功能。

[En]

Tuples and lists are very similar, there is a similar close relationship, that is, many operations in the list also apply to tuples, such as indexes, slices, and so on, but there are some differences, here is mainly to talk about the special features of tuples.

首先,元组也被称为锁定列表,这意味着元组中的元素不能随意更改,例如,不能随意为元组中的元素赋值

[En]

First of all, a tuple is also called a locked list, which means that the elements in a tuple cannot be changed at will, for example, you cannot assign a value to an element in a tuple at will

元组的标志不是一个简单的圆括号,而是一个逗号,或者是圆括号和逗号的组合,请参见以下示例

[En]

The flag of a tuple is not a simple parenthesis, but a comma, or a combination of parentheses and commas, see the following example

那如何初始化一个空元组呢?

上面刚刚说过元组是不可变对象,自然也不会有append、insert、pop这类的操作。元组中增添可以利用”+”实现,删除则可以利用del,因为这是python自带的回收机制。

“*”在数值型之间为乘积运算符,而在列表和元组之间可以表示为重复运算符。

集合是一组无序、非重复的元素。基本功能包括关系测试和消除重复元素。集合对象还支持数学运算,如并集、交集、差和对称差。

[En]

A collection is a set of unordered, non-repeating elements. Basic functions include relational testing and elimination of duplicate elements. Collection objects also support mathematical operations such as union, intersection, difference, and symmetric difference.

首先可以利用大括号或set()函数创建集合,如果想要创建空集合,你必须使用set()而不是{},{}用来创建字典。

字典是Python中一个非常有用的原生数据类型,一般序列是用连续的整数作为索引,而字典是以关键字作为索引,且关键字要是任意不可变类型。理解字典时可以把它看做无序的键:值对(key:value对)集合,同一个字典中键必须互不相同,利用{}可以初始化一个空的字典。

如果确保某个键不在字典中,则可以使用以下方法向字典中添加元素。

[En]

If you make sure that a key is not in the dictionary, you can use the following method to add elements to the dictionary.

而如果这个键已经存在于字典中了,就表示为这个键赋值。

  • 1、直接利用键的名字索引,不足的是如果字典中没有这个键则会发生报错。
  • 2、利用get方法,可以设置不存在键名的情况下的返回值,默认返回None。

  • 1、pop()方法,与列表不同的是必须要传入一个字典中已有键的参数。

  • 2、popitem(),类似于列表中的pop(),随机删除一组键值对而非删除最后一个,因为字典本身无序。
  • 3、del方法,用于删除整个字

setdefault()方法可以传入一组键值对,如果字典中已有同名键,则返回键在字典中对应的值,否则将传入的键值对存入字典中。

  • 如果字典中已有传入的键,则更新键对应的值。
  • 如果没有,则将传入的键值对存入字典中。

Original: https://www.cnblogs.com/insane-Mr-Li/p/15261685.html
Author: tooltime
Title: Python常用数据类型的基本操作

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/9848/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

免费咨询
免费咨询
扫码关注
扫码关注
联系站长

站长Johngo!

大数据和算法重度研究者!

持续产出大数据、算法、LeetCode干货,以及业界好资源!

2022012703491714

微信来撩,免费咨询:xiaozhu_tec

分享本页
返回顶部
最近整理资源【免费获取】:   👉 程序员最新必读书单  | 👏 互联网各方向面试题下载 | ✌️计算机核心资源汇总