一 变量
什么是变量呢?变量就是变化的量,用来标识一系列变化的状态,变量值得变化就构成了程序运行的不同结果。
1.变量赋值
name='zyl' #name变量名,‘zyl’变量值(存储在内存中的数据),绑定了一个名字name;变量值是存储的数据
赋值方式:
- 与c语言的区别在于变量赋值操作无返回值
- 链式赋值:y=x=a=1
- 多元赋值:x,y=1,2 x,y=y,x
- 增量赋值:x+=1
2.变量之对象
在python中所有数据都是围绕对象这个概念来构建的,对象包含一些基本的数据类型:数字,字符串,列表,元组,字典等
程序中存储的所有数据都是对象,
一个对象(如a=1)有:
一个身份(id)
一个类型(type)
一个值(通过变量名a来查看)
1 对象的类型也称为对象的类别,python为每个类型都定制了属于该类型特有的方法,极大地方便了开发者对数据的处理
2 创建某个特定类型的对象也称为创建了该类型的一个实例,工厂函数的概念来源于此
3.可变与不可变对象
实例被创建后,身份和类型是不可变的,
如果值是不可以被修改的,则是不可变对象
如果值是可以被修改的,则是可变对象
4.对象的属性和方法
属性就是对象的值,方法就是调用时将在对象本身上执行某些操作的函数,使用.运算符可以访问对象的属性和方法,如
a=3+4j
a.real
b=[1,2,3]
b.append(4)
5.身份比较,类型比较,值比较
x=1
y=1
x is y #x与y是同一个对象,is比较的是id,即身份
type(x) is type(y) #对象的类型本身也是一个对象,所以可以用is比较两个对象的类型的身份
x == y #==比较的是两个对象的值是否相等
二、基本数据类型
1.数字
age=18
print('身份:{} 类型:{} 数值:{}'.format(id(age),type(age),age))
print(bin(age)) #输出二进制
print(oct(age)) #输出八进制
print(hex(age)) #输出十六进制
'''身份:4297636896 类型:<class 'int'> 数值:18
0b10010
0o22
0x12'''
pyhon3 VS python2:python去掉了长整型的概念
2.字符串
定义:它是一个有序的字符的集合,用于存储和表示基本的文本信息,‘’或“”或‘’‘ ’‘’中间包含的内容称之为字符串
特性:
1.只能存放一个值
2.不可变
3.按照从左到右的顺序定义字符集合,下标从0开始顺序访问,有序
补充:
1.字符串的单引号和双引号都无法取消特殊字符的含义,如果想让引号内所有字符均取消特殊意义,在引号前面加r,如name=r'l\thf'
2.unicode字符串与r连用必需在r前面,如name=ur'l\thf'
2.1字符串常用操作
2.1.1获取字符子集
2.1.2 去掉空白
2.1.3 分割
2.1.4 区字符串长度
3.列表
list[2:3]
list.pop(index)
list.remove(key)
len(list)
list.insert(index,value)
list.append(value)
list.extend(list)
4.字典
5.布尔
6.元组
7.集合
总结
重点:
可变类型:在id不变的情况下,value可以变,则称为可变类型,如列表,字典
不可变类型:value一旦改变,id也改变,则称为不可变类型(id变,意味着创建了新的内存空间)