Python3---数据类型及序列类型

一.数值类型

1.int    整数

2.float    浮点数(小数)--不精确


3.decimal    精确的小数


4.Bool    布尔值(True--正确,False--错误)

5.complex    复数  ai+bj



运算:正常的 + - * /

%:取余      // 保留整数部分    ** 次方


二.序列类型

01    字符串string(不可变)       'abc'

02    列表list(可变)               mylist = ['18','hello','哈哈','250']

03    元组tuple(不可变)            a = ('hello',18,19,'hahaha')          

索引取值(索引位置从0开始):

eg:

In [25]: mylist = ['18','hello','哈哈','250']
In [26]: mylist[2]
Out[26]: '哈哈

切片:左闭又开(左边的值可以取到,右边的值取不到)

(1)正切:如:存在一个序列类型:a = 'abcdefg'  想要取出‘cde’,切片为[2:5](数字为索引位置)


(2)省略某个值,eg:[:]  ,[:5],[5:]




(3)反向取值


(4)隔着取,即加步长

eg:隔两个取值  c[0::2]


序列类型相互转换:

元组-->列表

In [27]: a =('hello',18,19,'hahaha')
In [28]: alist = list(a)
In [29]: alist
Out[29]: ['hello', 18, 19, 'hahaha']

列表-->元组

In[29]: alist = ['hello', 18, 19, 'hahaha']
In [30]: btuple = tuple(alist)
In [31]: btuple
Out[31]: ('hello', 18, 19, 'hahaha')

字符串-->列表

In [32]: b = '今天天气真好'
In [33]: blist = list(b)
In [34]: blist
Out[34]: ['今', '天', '天', '气', '真', '好']

字符串和元组不可变,但是非要改变呢?

元组:

In [36]: a = ('hello', 18, 19, 'hahaha')
In [37]: a[1:]
Out[37]: (18, 19, 'hahaha')
In [38]: a = a[1:]
In [39]: a
Out[39]: (18, 19, 'hahaha')

但这其实不是真正的改变,相当于给a元组重新进行了赋值而已

In [52]: a = (18,19,'hahaha')
In [53]: a
Out[53]: (18, 19, 'hahaha')
In [54]: id(a)
Out[54]: 139750971651200
In [55]: a = a[1:]
In [56]: a
Out[56]: (19, 'hahaha')
In [57]: id(a)
Out[57]: 139750951565832
元组的id值改变,说明前后不是一个元组,即元组不可变

列表可变证明:

In [40]: mylist
Out[40]: ['18', 'hello', '哈哈', '250']
In [41]: id(mylist)
Out[41]: 139750951457800
In [43]: mylist[2] = '888'
In [44]: mylist
Out[44]: ['18', 'hello', '888', '250']
In [45]: id(mylist)
Out[45]: 139750951457800
以上可以看到列表可变,所以它的id没有变化,表明是同一个列表

练习:通过不同的方法取出列表里的元素?

In [8]: mylist = [1,2,3,4,5]
In [9]: mylist[4]
Out[9]: 5
In [10]: mylist[-1]
Out[10]: 5
In [11]: mylist[4:]
Out[11]: [5]  #这只是取出了一个列表,不是元素
In [12]: type(mylist[4])
Out[12]: int
In [13]: type(mylist[4:])
Out[13]: list
In [14]: mylist[-1:]
Out[14]: [5]
In [15]: mylist[-1:][0]  #取出来的[5]是一个列表,再采取列表的索引操作,即可取出元素
Out[15]: 5





  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值