1、数值类型与系列类型

一、数值类型的分类

Python的数值类型

      
在python中,数字并不是1个真的的目标类型,而是1组看似项目标归类。那么些关键不外乎整数,浮点数,布尔类型和复数。那么些是相对来讲相比较常用的,复数一般都用在可比精细的科学计算中,依然首要看你的行事主旋律。当然除了上述四类还有壹部分任何细分的门类,如合理分数,固定精度的10进制数等。

1、**int型**: 整数型,全体整数都属于

整数

在python中整数常用的运算包含,加减乘除,乘方等。在python三.0事后一般整数与长整数已经济合作2为一。

In [17]: 3+4          #加
Out[17]: 7

In [18]: 5*9         #乘
Out[18]: 45

In [19]: 98-45        #减
Out[19]: 53

In [20]: 99/3         #除
Out[20]: 33.0

In [21]: 2**4         #乘方
Out[21]: 16

除此而外便是一对掺杂运算。那几个运算往往有次序。

1 In [22]: 3*4+6
2 Out[22]: 18
3 
4 In [23]: 3*(4+6)
5 Out[23]: 30

 

浮点数

在python中把带小数点的数字都称之为浮点数。

1 In [26]: 3.2+4.6
2 Out[26]: 7.8
3 
4 In [27]: 2*0.3
5 Out[27]: 0.6

 其它有些时候会并发精度难点,这一个主题材料的因由是硬件的范围。

1 In [28]: 0.2+0.1
2 Out[28]: 0.30000000000000004
1 >>> 2
2 2
3 >>> type(2)
4 <class 'int'>

布尔类型

观念那几个难题,bool类型本来是二个数字,不过这些数字却有七个值,True和False(注意首字母必须为题写),七个值也分头表示壹和0。

 1 In [30]: type(True)
 2 Out[30]: bool
 3 
 4 In [31]: True==1
 5 Out[31]: True
 6 
 7 In [32]: True+1
 8 Out[32]: 2
 9 
10 In [33]: True or False
11 Out[33]: True

 

复数

复数表示为多个浮点数,并在虚部扩大 j 或 J 的后缀。

1 In [34]: (3+2j)+3
2 Out[34]: (6+2j)
3 
4 In [35]: 1j*1j
5 Out[35]: (-1+0j)

 

python的队列类型

python中的种类类型包含列表,字符串,元组等。

 

字符串

字符串在python可以用len()来求长度,字符串的目录下标从0初步,从左至右依次类推。

 1 In [36]: s='python'
 2 
 3 In [37]: len(s)
 4 Out[37]: 6
 5 
 6 In [38]: s[0]
 7 Out[38]: 'p'
 8 
 9 In [39]: s[5]
10 Out[39]: 'n'

 

在python中除去正向索引还是能反向索引。即从最左边初始总括。

 1 In [40]: s='python'
 2 
 3 In [41]: s[-1]
 4 Out[41]: 'n'
 5 
 6 In [42]: s[-2]
 7 Out[42]: 'o'
 8 
 9 In [43]: s[len(s)-1]
10 Out[43]: 'n'

2、**float型**:  浮点型,带小数点都属

切片

切开的尺度是取前不取后,左闭右开的标准,其职业格局为 
[start:stop:step]。

 1 In [48]: s='python'
 2 
 3 In [49]: s[0:4]
 4 Out[49]: 'pyth'
 5 
 6 In [50]: s[:4]
 7 Out[50]: 'pyth'
 8 
 9 In [51]: s[:]
10 Out[51]: 'python'
11 
12 In [52]: s[3:]
13 Out[52]: 'hon'
14 
15 In [53]: s[0:6:2]
16 Out[53]: 'pto'

 

列表

列表是三个专擅档案的次序的靶子的职责相关的不改变聚焦。其尺寸是可变的。列表一样能够开始展览索引和切成丝的操作。

 1 In [54]: l=[123,'python',456,'hello']
 2 
 3 In [55]: len(l)
 4 Out[55]: 4
 5 
 6 In [56]: l[2]
 7 Out[56]: 456
 8 
 9 In [57]: l[:2]
10 Out[57]: [123, 'python']
11 
12 In [58]: l+[7,8,9]
13 Out[58]: [123, 'python', 456, 'hello', 7, 8, 9]
14 
15 In [59]: l
16 Out[59]: [123, 'python', 456, 'hello']

列表还有1对特定的操作,列表的增添和削减。

 1 In [60]: l=[123,'python',456,'hello']
 2 
 3 In [61]: l.append('789')
 4 
 5 In [62]: l
 6 Out[62]: [123, 'python', 456, 'hello', '789']
 7 
 8 In [63]: l.pop(2)
 9 Out[63]: 456
10 
11 In [64]: l
12 Out[64]: [123, 'python', 'hello', '789']

列表的排序sort(),反转reverse()。

 1 In [65]: l=['aaa','sss','ddd']
 2 
 3 In [66]: l
 4 Out[66]: ['aaa', 'sss', 'ddd']
 5 
 6 In [67]: l.sort()
 7 
 8 In [68]: l
 9 Out[68]: ['aaa', 'ddd', 'sss']
10 
11 In [69]: l.reverse()
12 
13 In [70]: l
14 Out[70]: ['sss', 'ddd', 'aaa']
1 >>> 2.5
2 2.5
3 >>> type(2.5)
4 <class 'float'>

元组

元组对象tuple,就如贰个不足改动的列表。

 1 In [76]: t=(1,2,3,4)
 2 
 3 In [77]: len(t)
 4 Out[77]: 4
 5 
 6 In [78]: t[3]
 7 Out[78]: 4
 8 
 9 In [79]: t+(6,7)
10 Out[79]: (1, 2, 3, 4, 6, 7)
11 
12 In [80]: t.index(2)
13 Out[80]: 1
14 
15 In [81]: t.count(3)
16 Out[81]: 1

 

拆包

 1 In [86]: li=[1,3,5]
 2 
 3 In [87]: x,y,z=li
 4 
 5 In [88]: x
 6 Out[88]: 1
 7 
 8 In [89]: y
 9 Out[89]: 3
10 
11 In [90]: z
12 Out[90]: 5

1 In [91]: li=[1,3,5]
2 
3 In [92]: x,*y=li
4 
5 In [93]: x
6 Out[93]: 1
7 
8 In [94]: y
9 Out[94]: [3, 5]

1 In [95]: li=[1,3,5]
2 
3 In [96]: x,y=li
4 ---------------------------------------------------------------------------
5 ValueError                                Traceback (most recent call last)
6 <ipython-input-96-cdbda8c19b71> in <module>()
7 ----> 1 x,y=li
8 
9 ValueError: too many values to unpack (expected 2)

 

 

 

叁、bool型:   布尔类型,  布尔类型唯有True和False

1 >>> True
2 True
3 >>> type(True)
4 <class 'bool'>
5 >>> False
6 False
7 >>> type(False)
8 <class 'bool'>

Python中严格区分大小写

>>> true
Traceback (most recent
call last):
File “<stdin>”,
line 1, in <module>
NameError: name ‘true’ is
not defined

这里报错NameError: name
‘true’ is not defined 名称“真”未定义

4、**complex: 复数类型 **

 

 1  >>> 2+3j
 2 (2+3j)
 3 >>> type (2+3j)
 4 <class 'complex'>

 6 注意这里只有后面是j是复数类型,别的字母会报语法错误
 7 >>> 2+3a
 8 File "<stdin>", line 1
 9 2+3a
10    ^
11 SyntaxError: invalid syntax
12 >>> 2+3w
13 File "<stdin>", line 1
14 2+3w
15    ^
16 SyntaxError: invalid syntax

 

二、str类型:连串类型 ,系列中的数是从0开首数

一、列表:用中括号来表示

1 >>> b = [5, 2.5, 1+2j]   # 这里5是第0位,2.5是第1位,1+2j是第2位依次类推
2 >>> type(b)
3 <class 'list'>

二、元组:用小括号来表示

1 >>> a = (3,2.3,True,6+3j)   #  这里3是第0位,2.3是第1位,True是第2位6+3j是第3位依次类推
2 >>> type(a)
3 <class 'tuple'>

三、列表和元组的不相同:列表里的数能够改造而元组里的数不能够更动

 

 1 下面是列表:
 2 >>> b = [5, 2.5, 1+2j]
 3 >>> type(b)
 4 <class 'list'>
 5 >>> b[1] =20
 6 >>> b
 7 [5, 20, (1+2j)]
 8 >>> 上面的2.5已结被改成了20
 9 
10 下面是元组:
11 >>> a = (3, 2.3, True, (6+3j))
12 >>> a[1] =20
13 Traceback (most recent call last):
14   File "<stdin>", line 1, in <module>
15 TypeError: 'tuple' object does not support item assignment
16 上面报错    类型错误:“元组”对象不支持项目赋值

 

四、索引取值

1 >>> a = [5,2.5,True,1+1j]
2 >>> a [3]                       #  这里3表示从前往后第几位 
3 (1+1j)
4 >>> a [-1]                      #  这里-1表示从后面往前数
5 (1+1j)

5、
切丝取值:注意切条取值的默许是正向取,能够不用写明,不过反取是要写明的不然再次来到为空

1 >>> a = [5,2.5,True,1+1j] 
2 >>> a [1:4]                     #  从第1位开始取到第3位
3 [2.5, True, (1+1j)]
4 >>> a [3:4]                     #  从第3位开始取到第3位
5 [(1+1j)]
6 >>> a [-1:-1]                   #  从最后1位取到第1位是空的后面虽然写的-1单后面还有一个默认的1代表正取所以是取不到的返回空
7 []
8 >>> a [-1::-1]                  #  从最后1位开始取到全部的意思后面的-是反向取,1是步长,所以是可以取到值的
9 [(1+1j), True, 2.5, 5]

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图