python六大数据类型

基本知识

变量命名

变量名:只包含数字,下划线,字母。但只能以下划线或字母开头。并且不能使用关键字
例:

_name = """CC"""
print(_name)  #输出:CC

注释

# 单行注释内容
'''
多行注释内容
1
2
'''

"""
多行注释内容
1
2
"""

print([1,2,3][0])        #输出:1

可变数据类型与不可变数据类型

  • 一切皆为对象,一切皆为对象的引用

不可变数据(3 个):Number(数值)、String(字符串)、Tuple(元组)
可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)

不可变数据类型
  • x引用的地址处的值是不能被改变的

例子:

>>> x = 1
>>> id(x)
140730820695712
>>> y = 1
>>> id(y)
140730820695712
>>> x = 2
>>> id(x)
140730820695744
>>> y = 2
>>> id(y)
140730820695744
>>> z = y
>>> id(z)
140730820695744
  • id()查看的是当前变量的地址值
  • x = 1和y = 1两个操作的结果表示x和y在此时的地址值是一样,也就是说x和y 其实是引用了同一个对象,即1。
  • 进行x = 2赋值时(创建了一个新对象的引用),发现x的地址值变了,虽然还是x这个引用,但是其地址值却变化了,后面的y = 2以及z = y,使得x、y和z都引用了同一个对象,即2。
  • 当每个对象没有引用时:地址要被“垃圾回收”
可变数据类型
  • 对一个变量进行操作时,其值是可变的,值的变化并不会引起新建对象,即地址是不会变的,只是地址中的内容变化了或者地址得到了扩充

例:

>>> a = [1,2,3]
>>> id(a)
2688146540864
>>> a = [1,2,3]
>>> id(a)
2688146552384
>>> a.append(4)
>>> id(a)
2688146552384
>>> a += [2]
>>> id(a)
2688146552384
>>> a
[1, 2, 3, 4, 2]
  • 进行两次a = [1, 2, 3]操作,两次a引用的地址值是不同的,也就是说其实创建了两个不同的对象
  • 对于可变数据类型来说,具有同样值的对象是不同的对象,即在内存中保存了多个同样值的对象,地址值不同
  • 对a进行的操作不会改变a引用的地址值,只是在地址后面又扩充了新的地址

基本数据类型:

Python3 中有六个标准的数据类型:

  • Number(数值)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Sets(集合)
  • Dictionary(字典)

可用type()方法查看变量类型(python定义变量时不会指明变量类型)
例:

>>> a = 3/2
>>> type(a)
<class 'float'>
>>> b = 'whs'
>>> type(b)
<class 'str'>
>>> a = [1,2,3]
>>> type(a)
<class 'list'>
>>>
>>> a = (1,2,3)
>>> type(a)
<class 'tuple'>
>>> c = complex(1,1)
>>> type(c)
<class 'complex'>
>>> c = {5:4,'whs':'cc'}
>>> type(c)
<class 'dict'>

Number

python3 支持三种不同数值类型:

  • 整型(int)——是正或负整数,不带小数点。没有限制大小,可以当成long来使用。python2才有Long类型
  • 浮点型(float)——整数部分与小数部分组成。也可用科学计数法表示(2.5e = 2.5 * 10^2 = 250)
  • 复数类型(complex)——复数由实数部分和虚数部分构成,可以用a+bj,或者complex(a,b) a是实数部分,b是虚数部分。虚数部分如果缺省,缺省值为0。
数字类型转换
方式 效果
int(x) 将x转换为整数
float(x) 将x转换为浮点数
complex(x) 将x转换到一个复数,实数部分为x,虚数部分为0
complex(x,y) 将x转换到一个复数,实数部分为x,虚数部分为y

注:x与y是数字表达式

数值运算操作符

在这里插入图片描述

  • Python求余公式:r=a - b*[a//b](r为余数,a为被除数,b为除数且不能为0)
赋值增强运算符

在这里插入图片描述

String

字符串基本特点
  • 字符串的本质是:字符序列。Python 的字符串是不可变的,我们无法对原字符串做任何修改
  • Python3 的字符默认就是 16 位 Unicode 编码,ASCII 码是 Unicode 编码的子集。
  • 使用内置函数 ord()可以把字符转换成对应的 Unicode 码;
  • 使用内置函数 chr()可以把十进制数字转换成对应的字符。
a = 'a'
b = 'b'
print(ord(a))
print(ord(b))

a = 97
b = 98

print(chr(a))
print(chr(b))

输出:

97
98
a
b
创建字符串

通过单引号或双引号创建字符串,或者连续三个单引号或三个双引号

s = 'hello python'
s1 = "hello python"
s2 = """
    hello 
    python
    """
print(s)
print(s1)
print(s2)

注:三个单引号或三个双引号可用来设置多行字符串

List

Tuple

Sets

猜你喜欢

转载自blog.csdn.net/qq_44923545/article/details/108412757