计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值。但是,计算机能处理的远不止数值,还可以处理文本、图形、音频、视频、网页等各种各样的数据,不同的数据,需要定义不同的数据类型。在Python中,能够直接处理的数据类型有以下几种:数值型、字符串型、列表型、元组型、字典型。

数值类型

  顾名思义就是数字类型,但数字类型内部又分为:整型、浮点型、长整型、复数型

整数类型

  整数类型的范围是2**32,其中包含正数和负数(2的31次方个正和2的31次方的个负数,所以它的范围是-2147483648 ——— 214748364。
  PS:查看一个数据的类型使用type(数据)方法  
In [1]: a=1
In [2]: type(a)
Out[2]: int    # int表示为整型
In [18]: type(2/1)
Out[18]: int

浮点型

  浮点类型就是带小数点的,多余的位数会被四舍五入。
  整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。
In [3]: a=1.23
In [4]: type(a)
Out[4]: float  # float表示的是浮点数
In [19]: type(2.0/1)
Out[19]: float

长整型

  用l或L表示,当我们赋值的时候使用l可以把变量赋值为长整型,注意在Python3中已经取消了长整型这个格式。
In [11]: a=1299999999999999999999999999999999999999999
In [12]: type(a)
Out[12]: long    #long表示长整型
In [13]: a
Out[13]: 1299999999999999999999999999999999999999999L
In [15]: a=123l
In [16]: type(a)
Out[16]: long
#只有python2.x中有长整型的概念,python3.x只有整型

复数型

  用j表示,当我们赋值的时候使用j可以把变量赋值为复数型,python对复数提供内嵌支持。(其他大部分软件没有)
  复数一般用于科学计算,我们日常一般不会使用,这里知道即可。
In [20]: type(123j)
Out[20]: complex   # 表示复数类型

字符串类型

  字符串是以单引号'或双引号"括起来的任意文本,比如'abc'"xyz"等等。请注意,''""本身只是一种表示方式,不是字符串的一部分,因此,字符串'abc'只有abc这3个字符。如果'本身也是一个字符,那就可以用""括起来,比如"I'm OK"包含的字符是I'm,空格,OK这6个字符。有三种方法定义字符串:单引号,双引号,三引号。
str='this is string'
str="this is string"
str='''this is string'''   #也可以是三个双引号,三个引号可以多行注释但是不能单双混合
    其中三重引号除了能定义字符串以外,还可以表示注释。

字符串的基本操作

  字符串是一个序列,可以通过索引和切片去操作

索引

  类似数组的下标:
In [3]: a='1234567'
In [4]: a[0] -->#下标从0开始,0表示第一个数
Out[4]: '1'
In [5]: a[3] -->#表示第四个数
Out[5]: '4'

切片

  类似shell变量的截取:
 1 In [14]: a='abcd'
 2 In [15]: a[0:2]
 3 Out[15]: 'ab'
 4 #从第0个开始截取2个字符,其中0可以省略
 5 
 6 
 7 In [14]: a='abcd'
 8 In [16]: a[:-1]
 9 Out[16]: 'abc'
10 #默认是从左往右(前往后),带减号,表示从右往左(后往前),-1表示最后一个字符(a='abcd',-1的值是d,也就是3,顾a[:-1],就等于a[0:3])
11 
12 
13 In [14]: a='abcd'
14 In [17]: a[1:]
15 Out[17]: 'bcd'
16 #从1开始截取到最后
17 
18 
19 In [14]: a='abcd'
20 In [20]: a[::2]
21 Out[20]: 'aceg'
22 #步长为2,表示从0开始步长为2,(取0,2,4,6)
23 
24 
25 In [26]: a
26 Out[26]: 'abcdefg'
27 In [27]: a[-5:-1]
28 Out[27]: 'cdef'
29 #表示倒着取,从倒数第五个取到倒数第一个(不包含倒数第一,要想取可以使用a[-5:])
30 
31 
32 In [29]: a
33 Out[29]: 'abcdefg'
34 In [30]: a[0:5:1]
35 Out[30]: 'abcde'
36 In [31]: a[0:5:2]
37 Out[31]: 'ace'
38 #从0开始取到第5个,步长为1,步长为2
39 
40 
41 In [32]: a
42 Out[32]: 'abcdefg'
43 In [34]: a[-1::-1]
44 Out[34]: 'gfedcba'
45 #从后往前取,步长为-1,表示每次倒着取1个,由于没有指定结尾,默认到最后,所以就把数字逆了过来。
46 
47 
48 In [36]: a
49 Out[36]: 'abcdefg'
50 In [38]: a[::2][:2]
51 Out[38]: 'ac'
52 #表示先每隔2个取出来,然后从头开始取2个。
字符串的切片操作

相关文章:

  • 2021-07-27
  • 2021-07-13
  • 2021-07-22
  • 2021-05-16
  • 2021-05-22
  • 2022-12-23
  • 2021-12-01
猜你喜欢
  • 2021-10-01
  • 2021-09-24
  • 2021-08-23
  • 2021-12-19
  • 2021-12-15
  • 2021-08-16
相关资源
相似解决方案