我和Python的Py交易》》》》》》数据类型

本文深入探讨Python中的数据类型,包括不可变类型如数字、字符串、元组和可变类型如列表、字典、集合。介绍了每种类型的特点、操作方法,如列表的增删改查、字典的增删改查,以及集合的运算。文章还讨论了变量、数据和内存之间的关系,以及可变和不可变数据类型的内存管理机制。
摘要由CSDN通过智能技术生成

Python里的变量 ---门牌

 

Python在使用变量之前无须定义它的类型,但是必须声明以及初始化该变量。

Python中给变量赋值就是声明,初始化变量(也就是创建一个相应数据类型的对象,而那些数据类型就是类),变量的类型是取决于其储存的数据。(下面代码中的a变量,其类型类型随着赋值的类型不同而改变)

#type(a)返回a的数据类型
a=1
print(type(a),'整型')

a=1.1
print(type(a),'浮点型')

a=True
print(type(a),'布尔类型')

a=''
print(type(a),'字符串类型')

a=['床前明月光','地上鞋两双']
print(type(a),'列表')

a=(123,123)
print(type(a),'元组')

a={
  '好诗':'举头望明月,低头思故乡','好湿':'床前明月光,地上鞋两双'}
print(type(a),'字典')

a={12345,'上山打老虎'}
print(type(a),'集合')


# <class 'int'> 整型
# <class 'float'> 浮点型
# <class 'bool'> 布尔类型
# <class 'str'> 字符串类型
# <class 'list'> 列表
# <class 'tuple'> 元组
# <class 'dict'> 字典
# <class 'set'> 集合

 

数据类型

Python3 中常用的数据类型:

  • 不可变数据类型
  • Number(数字)
  • String(字符串)
  • Tuple(元组)
  • 可变数据类型
  • List(列表)
  • Dictionary(字典)
  • Sets(集合)

数据类型类型可分为:可变数据类型不可变数据类型

可变数据类型是指一个ID地址中储存的数据是可以改变的。

不可变数据类型是指一个ID地址中储存的数据不可以改变。

一 ,Number(数字)----不可变数据类型

1.int(整型)

int类型就是整数

Python的2.x的版本中还存在Long长整型(表示比较长的整数(比较大OR比较小)),3.x的版本中就只有int整型

整型类型能表达的数值仅仅与你的机器支持的(虚拟)内存大小有关,换句话说,Python能轻松表达很大的整数。

 

 

(嘿嘿,自己去算算对不对)

2.float(浮点数)

我们暂时的把浮点数理解为带小数点的小数(我还会开单章来说说浮点数)

3.bool(布尔类型)

把 True 和 False 定义成关键字了,但它们的值还是 1 和 0,它们可以和数字相加

 

注意:

  • 1、Python可以同时为多个变量赋值,如a, b = 1, 2。
  • 2、一个变量可以通过赋值指向不同类型的对象。
  • 3、数值的除法 / 总是返回一个浮点数,要获取整数使用 // 操作符( // 是以舍去小数部分来取整的)。
  • 4、在混合计算时,Python会把整型转换成为浮点数。

Python还支持complex(复数),复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。

二,String(字符串)----不可变数据类型

字符串是以单引号 ' or双引号 " or三引号 ''' 括起来的任意文本(用来括起文本的单引号,双引号,三引号并不是文本里的字符),例如:'追求喜欢的女孩’,“有机会要追求”,‘’’没有机会,创造机会也要追求‘‘’

当有属于文本中的单引号  ’ ,就需要用双引号把文本括起来;当有属于文本中的双引号  ",就需要用三引号把文本括起来。(当引号为文本时要用引号多的把引号少的括起来)

 

三引号可以把多行字符串括起来

使用反斜杠 \ 转义特殊字符,如果你不想让反斜杠发生转义,可以在字符串前面添加一个 r,表示原始字符串:

>>>print('L\ove')
L
ove
>>> print(r'L\ove')
L\ove
>>> 

字符串的操作

[ ],[ : ],[ : : ]通过索引可以进行切片操作,和列表一样(在列表时会详细讲)

加号 (+) 是字符串的连接符, 星号 (*) 表示复制当前字符串,紧跟的数字为复制的次数。

str = 'I Love'
print((str+'You ')*4)

#输出 I LoveYou I LoveYou I LoveYou I LoveYou 

注意

Python 没有单独的字符类型,一个字符就是长度为1的字符串。

与 C 字符串不同的是,Python 字符串不能被改变。向一个索引位置赋值,比如word[0] = ‘m’会导致错误。

三,tuple(元组----不可变数据类型

元组被称为只读列表,即数据可以被查询,但不能被修改,所以,列表的切片操作同样适用于元组。

元组写在小括号 () 里,元素之间用逗号隔开。

 同一个元组中,元素可以是不同的(元素可以为任意类型)

虽然tuple的元素不可改变,但它的元素可以为可变数据类型,比如list列表。(现在不理解没关系,在后面解释可变与不可变数据类型中会有详细解释)

tup =([11,22,33], ['无边落木萧萧下', 44])
a=tup[1]
b=[11,22,33]
print(id(a))
print(id(tuple[1]))
print(id(b))
#输出结果
#31469064
#31469064
#31927176

构造包含 0 个或 1 个元素的元组比较特殊,所以有一些额外的语法规则:

tup1 = ()    # 空元组
tup2 = (20,) # 一个元素,需要在元素后添加逗号
作用:

1 对于一些数据我们不想被修改,可以使用元组;

2 另外,元组的意义还在于,元组可以在映射(和集合的成员)中当作键使用——而列表则不行;元组作为很多内建函数和方法的返回值存在。

四, List(列表)----变数据类型

列表(list)是使用使用中括号 [ ] 来解析列表。

通过列表可以对数据实现最方便的存储、修改等操作

定义列表
a = ['','','','','','','']  # 定义一个列表
a=list(('','','','','','',''))#强制转换

 同一个列表中,元素可以是不同的(元素可以为任意类型)

通过下标访问列表中的元素,下标从0开始计数

 

 增(append,insert, extend

 

1.insert 方法用于将对象插入到列表中

 

a = ['', '', '', '', '', '', ''] # 定义一个列表 a.insert(0,'就是这') print(a) # ['就是这', '锦', '瑟', '无', '端', '五', '十', '弦'] 

 

2.append方法则用于在列表末尾追加新的对象

a = ['', '', '', '', '', '', '']  # 定义一个列表
a.append('最后面')
print(a)
# ['锦', '瑟', '无', '端', '五', '十', '弦', '最后面']

3.追加一个序列里的多个元素( extend)

         extend 方法可以在列表的末尾一次性追加另一个序列(可迭代对象,如 列表,字典,元组,字符串)中的多个值。

    extend 方法修改了被扩展的列表,而原始的连接操作(+)则不然,它会返回一个全新的列表。

#列表
a = ['', '', '', '', '', '', ''] b = ['', '', '', '', '', '', ''] a.extend(b) #只是对a进行扩展,无返回值(不会产生新的列表) print(a) # ['锦', '瑟', '无', '端', '五', '十', '弦', '一', '弦', '一', '柱', '思', '华', '年'] b.extend(b) print(b) # ['一', '弦', '一', '柱', '思', '华', '年', '一', '弦', '一', '柱', '思', '华', '年']  #字典 a = ['', '', '', '
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值