基本数据类型


在python中变量不需要声明数据类型,但是每个变量使用前都必须先赋值,只有赋值后变量才会被创建。所以在python中变量就是变量没有类型,我们所说的类型是变量所指向的内存地址中的类型。 
和其他大部分编程语言一样,python中给变量赋值也是用等于号 = ,左边是变量名,右边是需要存储在这个变量中的值或者说数据。 
代码示例:

num=10  #整数类型print(num)

运行结果:

10


多个变量赋值

python可以允许同时给多个变量赋值,但是建议不要使用这种写法,因为看着挺乱的,示例: 
a = b = c = 10

以上这个示例,把10这个值赋给了a、b、c这三个变量上,过程是这样的:10先赋给了c,然后c的值赋给了b,b的值又赋给了a。 
除此之外也可以同时给多个变量赋不同类型的值,示例:

a,b,c=10,12.5,"string" 
以上这个示例,把10这个值赋给了a,把12.5赋给了b,把”string”这个字符串赋值给了c。



标准数据类型

python中有六个标准的数据类型,也可以说是数据对象:

  • Number (数字、整数类型)

  • String (字符串类型)

  • List (列表)

  • Tuple (元组)

  • Sets (集合)

  • Dictionary (字典)



Number(数字、整数类型)

Python3 支持 int、float、bool、complex(复数)。 
在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。 
数据类型是不允许改变的,这就意味着如果改变数字数据类型得值,将重新分配内存空间。 
当你给一个变量赋值一个整数时,Number对象就会被创建。 
像大多数语言一样,数值类型的赋值和计算都是很直观的。 
内置的 type() 函数可以用来查询变量所指的对象类型,类似于JavaScript中的typeof。 
代码示例:

num=10   #整数类型
print(type(num))

运行结果:

<class 'int'>

或者使用isinstance来判断 ,示例:

a=10print(isinstance(a,int))

运行结果:True

isinstance与type的区别:

  • type()不会认为子类是一种父类类型。

  • isinstance()会认为子类是一种父类类型。

注意:在 Python2 中是没有布尔型的,它用数字 0 表示 False,用 1 表示 True。到 Python3 中,把 True 和 False 定义成关键字了,但它们的值还是 1 和 0,它们可以和数字相加。 


Python 支持四种不同的数值类型:

  • 整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点。Python3 整型是没有限制大小的,可以当作 Long 类型使用,所以 Python3 没有 Python2 的 Long 类型。

  • 浮点类型(float) - 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)

  • 布尔类型- 虽然布尔类型的值在python3中定义为关键字True和False,但是实际上还是0和1,可以与数字相加

  • 复数( (complex)) - 复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。 
    代码示例:

num=10   #整数类型
fudian=12.5   #浮点类型
boolean=True #布尔类型
test=4+3j #复数类型

print(type(num))
print(type(fudian))
print(type(fudian))
print(type(test))

运行结果:

<class 'int'> 
 <class 'float'> 
 <class 'float'> 
 <class 'complex'>

可以使用十六进制和八进制来代表整数,示例:

number = 0xA0F # 十六进制 
  print( number) 
 打印结果:2575

number=0o37 # 八进制 
 print( number) 
 打印结果:31

Alt text


String (字符串类型)

字符串是 Python 中最常用的数据类型,我们可以使用单引号或者双引号来创建字符串。 
Python 不支持单个字符类型,也就是C或Java中的char类型,即便赋值的是单个字符在Python中也是作为一个字符串使用。 
创建字符串很简单,只要为变量赋值一个使用引号引起来的值即可。例如:

var1="Hello"
var2="World"

print(type(var1))
print(type(var2))

运行结果:

<class 'str'> 
 <class 'str'>


Python 访问字符串中的子字符

Python 访问单个子字符串可以使用字符串下标来取值,访问多个子字符串,可以使用方括号来截取字符串,代码示例:

var1="Hello World"

print(var1[0])  #拿取字符串下标为0的字符串
print(var1[0:5]) #拿取字符串下标0-5的子字符串

运行结果:


 Hello


字符串下标: 
字符串下标是从0开始的 
var1=”Hello World” 
     ||||||||| 
     012345678


字符串拼接: 
字符串与字符串之间可以进行拼接,直接使用 + 号就能进行拼接,代码示例:

var1 = "Hello"
var2 = "World"

print(var1 + var2)

运行结果:

HelloWorld


Python转义字符 
在需要在字符中使用特殊字符时,python用反斜杠()转义字符。如下表:

Alt text


del: 
del关键字可以删除对象的引用,使用del可以删除单个或多个变量,例如:

del num     #删除单个 
 del num_1,num_2      #删除多个

删除后这个变量就不能再使用了,使用的话就会报错,错误示例:

a=10 
 del a 
 print(a)

运行就会报如下错误: 
 Traceback (most recent call last): 
  File “E:/PythonProject/Number.py”, line 5, in  
    print(a) 
 NameError: name ‘a’ is not defined