当前位置:   article > 正文

【Python基础-6】数据类型(字符串、列表、字典、元组、集合)_一、python数据类型1.数值2.字符串3.列表4.元组5.字典集合

一、python数据类型1.数值2.字符串3.列表4.元组5.字典集合

前面了解到了什么是基础数据类型中的数值型,现在我们继续来认识一下何为序列类型

在本篇中主要讲解一些关于序列类型的基础知识,主要对其基本用法的一些了解,对于一些序列类型的更多方法会在后面的篇章中讲到。


前言

在python中除了数值类型还有序列类型,所谓序列类型其实就是可以存储多个数据的一种数据类型,一般的序列类型都有它的索引。


一、可变类型与不可变类型的定义

1.1 可变数据类型

所谓可变数据类型其实就是值在发生改变的时候,内存地址不变但是原值在变

比如给一个数据分配了一个空间并给了一个初值,你能够在这个空间里面直接去修改它的值,说明这是可变的。

我们常见的可变数据类型有:列表、字典、集合

1.2 不可变数据类型

所谓不可变的数据类型其实就是修改值的时候,它的内存地址也发生了改变,从而产生了新的值

我们常见的不可变数据类型有:字符串、数字、元组

二、不可变类型

2.1 字符串 str

字符串主要是以单引号双引号三引号括起来的任意文本,主要用来记录文本信息,其中的引号主要是用来表示字符串这个数据类型的,并不是字符串的一部分。 

  1. name = '小廉' # 定义一个name变量,将"小廉"赋值给name,这里的"小廉"就是一个字符串
  2. print(name)

 字符串只能用于相加和相乘的运算,其中相加相当于拼接。

  1. # 相加进行拼接
  2. a = 'abc'
  3. b = 'efg'
  4. print(a+b)
  5. # 相乘进行多次输出
  6. a = 'abc'
  7. print(a*5)

 2.1.1 转义字符\

主要用于一些特殊的输出

\n 表示换行
\t 表示制表符(相当于tab键,空格)
\\ 表示\
\‘ 表示一个’

如果要输出带引号的文本,就需要用到转义字符了。如下,

  1. print('I\'m 小廉') # 其中如果不加\,系统就分辨不出来谁是引用内容,从而发生报错
  2. >>I'm 小廉

2.2 数字 (int float)

这里的数字包含了整型和浮点型,都属于不可变的类型

2.3 元组 tuple

元组就是一组数据的集合,其中的数据是只能去访问而不能去改变其值的

元组的表示通常使用一对小括号(),如下便是元组的表示

  1. content = () # 设置一个空元组
  2. content2 = (1,2,3,4,'小廉') # 初始化一个元组
  3. print(type(content)) # 查看其类型
  4. print(content2) # 输出元组
  5. # 输出的值
  6. >> <class 'tuple'>
  7. >> (1, 2, 3, 4, '小廉')
  8. 进程已结束,退出代码0

 元组本身不可变,但如果元组包含其他可变的元素,那些可变元素可以改变。

对于元组来说,其实并不需要小括号也是可以的,但是必须得有逗号进行分隔,就算只有一个元组,也要用逗号进行分隔。如下,

  1. cont = "石昊","石毅","秦昊" # 初始化一个元组
  2. cont2 = ('大表哥',) # 只有一个元素的元组
  3. print(cont)
  4. print(type(cont)) # 查看类型
  5. print(cont2)
  6. print(type(cont2)) # 查看类型
  7. # 输出值
  8. >> ('石昊', '石毅', '秦昊')
  9. >> <class 'tuple'>
  10. >> ('大表哥',)
  11. >> <class 'tuple'>
  12. 进程已结束,退出代码0

三、可变类型

3.1 列表 list

列表就是一组有序可变的数据集合。

因为列表是可变的,所以更加方便的在原数据上面进行个别数据的修改。

列表的创建,以及初始化如下所示:

  1. lst = [] # 创建一个空列表
  2. name_lst = ['小廉','石昊','石毅','秦昊',100] # 初始化一个列表
  3. print(type(lst)) # 查看类型
  4. print(name_lst) # 输出值
  5. >> <class 'list'>
  6. >> ['小廉', '石昊', '石毅', '秦昊', 100]
  7. 进程已结束,退出代码0

在上面的代码中其实也不难发现,python相比于传统的C语言来说更加灵活多变,在一个列表中存储的值不一定只是同一个类型,也可以存储其他数据类型,比如上面存储了字符串和整型


3.2 字典 dict

字典主要是用于保存一些具有对应关系的数据类型,主要采用键值对的方式来存储数据

键值:键就是key,值就是value

键值对表示如下:
‘xx’:‘xxxxx’
key:value

创建字典如下:

  1. dic1 = {} # 创建一个空字典
  2. # 给字典里面初始化赋值,注意每一个键值对都要用逗号隔开
  3. dic = {'name':'石昊','age':18,'hobby':'战斗'}
  4. print(type(dic1)) # 查看类型
  5. print(dic)
  6. >> <class 'dict'>
  7. >> {'name': '石昊', 'age': 18, 'hobby': '战斗'}
  8. 进程已结束,退出代码0

现在我们知道了如何创建一个字典,但是我们又该如何通过键值对去访问呢?

其实只需要通过,字典名[key]就可以去访问value啦

  1. dic = {'name':'石昊','age':18,'hobby':'战斗'}
  2. # 通过键值对的方式去访问值
  3. print(dic['name'])
  4. print(dic['age'])
  5. print(dic['hobby'])
  6. >> 石昊
  7. >> 18
  8. >> 战斗
  9. 进程已结束,退出代码0

明白如何去访问值之后,我们又会关心如何去修改值?

其实修改值也非常容易,直接通过,字典名[key]=value就可以修改咯

下面可以很清楚的看到value的修改

  1. dic = {'name':'石昊','age':18,'hobby':'战斗'}
  2. dic['name'] = '小廉' # 修改字典的'name'值
  3. print(dic['name'])
  4. >> 小廉
  5. 进程已结束,退出代码0

 3.2.1 注意事项

  • 字典是无序的,没有下标,可以通过键来取值
  • 字典是不重复的,字典的键如果相同,就取最后一个重复键的值
  • 字典的值是可以改变的,根据键改变值

3.3 集合 set

集合就是一组不重复、且无序的一组数据集合。

集合的表示如下,

在这里有一个注意点,在初始化集合的时候,必须使用set()因为大括号{ }表示字典。

  1. cont = set() # 定义一个空集合
  2. cont2 = {2,4,5,1,2,3} # 给集合初始化值
  3. print(type(cont)) # 查看类型
  4. print(cont2) # 输出值
  5. >> <class 'set'>
  6. >> {1, 2, 3, 4, 5}
  7. 进程已结束,退出代码0

 从上面代码不难发现,虽然初始化的集合是无序且有重复项的,但是在你输出集合的时候,它就会输出有序且无重复的集合。

虽然集合本身是可变数据类型,但其实它是不能存储可变数据类型的,只能存储不可变数据类型。如以下操作都是错误的:

{{‘xx’:xx}} 报错
{【xxx,xxx】} 报错
{{1,2,3}}  报错

集合其实是没有下标的

3.3.1 集合的作用

  1. 存储非重复的数据
  2. 将序列类型进行去重(比如去重列表元素)

3.3.2 集合的数学运算

运算符操作python运算符含义
交集&取两集合公共的元素
并集|取两集合全部的元素
差集-取一个集合中另一集合没有的元素
成员运算in和not in判断一个某个元素是否在或者不在集合中

具体案例如下:

  1. set1 = {1,2,3}
  2. set2 = {4,5,6,1,2}
  3. print(set1&set2) # 输出两个集合的交集
  4. print(set1|set2) # 并集
  5. print(set1-set2) # 输出set1中去除set2的元素
  6. print(set2-set1) # 输出set2中去除set1的元素
  7. print(1 in set1) # 看1是否在set1中
  8. print(7 not in set2) # 看7是否不在set2中
  9. >> {1, 2}
  10. >> {1, 2, 3, 4, 5, 6}
  11. >> {3}
  12. >> {4, 5, 6}
  13. >> True
  14. >> True
  15. 进程已结束,退出代码0

总结

        在本篇文章中只是简单介绍了除数值类型的其他几种基本数据类型,对于每一种数据类型其实都有各自的方法,对于各自的方法在具体实验中会大有用处,本篇先不做讲解,想要了解更多数据类型的方法可以看我后面更新的文章。

        总体来说,python正是因为有了这些基本数据,才会让数据更好的存储以及访问,在实际例子中,这些类型也会经常用到。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/836758
推荐阅读
相关标签
  

闽ICP备14008679号