一、变量和常量
1、常量
其值不会发生变化不能被改变的两就是常量
- 整形常量:2
- 浮点型常量:2.2
- 字符串常量:‘abcde’
- 布尔值常量:False、True
2、变量
python中其值是会发生变化,就是变量
- python的变量是不用声明的
- 定义变量的时候要初始化就是给一个具体的值
- 变量完成初始化后才能定义
=:赋值运算符
可以多变量同时定义
二、python数据类型
- Number 数字类型
- String 字符型
- List 列表类型
- Tuple 元组类型
- Dict 字典类型
- Set 集合类型
数字类型(整形、浮点型和复数)
1、整形 int
1,2,3,4,5,6…
2、浮点型 float、decimal
2.2,2.4默认精度17位
decimal可以精度提升到30位
3、复数-complex
- aa.real:获取复数的实部
- aa.imag:获取复数的虚部
4、布尔类型
flat=False
Flat=True
四、序列类型
1、序列类型
- 序列类型其实也是一种容器类型,可以放多个数据,里面放的不同类型的数据就叫成员或者元素。
- 序列类型的成员是有序的(怎么放进去的怎么拿出来)
- 可以通过下标(索引index,就是每个元素在序列中的位置的编号,一般是从0开始)访问到序列一个或者多个元素或者成员
- 序列类型包括:
- 字符串类型String
- 列表list
- 元组tuple
- 序列类型元素的访问:
- 通过下标可以访问一个或者多个元素
- 访问多个元素,我们成为切片
2、序列类型通用运算符
in,not in
指元素在序列中和不在序列中,返回false和true
- str1+str2:两个元素做拼接,如果是数字类型可以直接运算加
- str1*n(n=num)指复制n是多少就是复制多少份
str='12345abcD'
print(str[0:8])#切片截取
print(str[::-1]) #逆向排序
print(str[2]) #根据下标查询
print(str[0:5]) #正向查询
print(str.replace(Value1,Value2))#替换
print(str.index("5")) #查看值得索引
print(max(str))
print(min(str)) #求序列最大值和最小值
print(str.upper())#小写字母换成大写字母
print(str.lower())#大写字母换成小写字母
print(str.swapcase())#大小写字母翻转
"%d,%f"%(a,b)或"%d*%d=%2d"%(a,b,a*b),end=' '#end=不换行打印
>>> a=12
>>> b=23.5
>>> print(a)
12
>>> print("%d,%f"%(a,b))
12,23.500000
>>> print("输出的数据是:%d,%f"%(a,b))
输出的数据是:12,23.500000
>>> print("输出的数据是:%d,%3f"%(a,b))
输出的数据是:12,23.500000
>>> print("输出的数据是:%d,%9f"%(a,b))
输出的数据是:12,23.500000
>>> print("输出的数据是:%d,%12f"%(a,b))
输出的数据是:12, 23.500000
>>> print("输出的数据是:%d,%3f"%(a,b))
输出的数据是:12,23.500000
>>> print("输出的数据是:%d,%5.3f"%(a,b))
输出的数据是:12,23.500
>>> print("输出的数据是:%5d,%5.3f"%(a,b))
输出的数据是: 12,23.500
>>> print("输出的数据是:%1d,%5.3f"%(a,b))
输出的数据是:12,23.500
>>> print("输出的数据是:%d,%5.3f"%(a,b))
输出的数据是:12,23.500
>>> print("输出的a是:%3d"%a)
输出的a是: 12
>>> print("输出的a是:%8d"%a)
输出的a是: 12
五、列表
1、列表简介
列表是序列类型,有序、可索引、可切片、可变、可重复也可以理解为一个容器类型,所有基础数据类型都可以存入(数字、字符串、列表、元组、字典等)
L = ['apple','pear','banana','oranger','grape']
print(L.append("peach"))#增加列表元素
print(L)
L[4]='大狗' #!!!!!直接修改列表中的元素,非常实用的方法,注意格式
print(L)
L1 = [1,2,"A","B"]
print(L.append(L1)) #添加列表
print(L)
print(L.insert(0,"fruit")) #print(L.insert(index,"value")) 根据索引号插入元素,位置在插入元素的前面
print(L)
len(L) #列表总长度
print(L.remove(L1)) #删除可以元素也可以是列表,列表页当作元素被添加或删除
print(L)
print(L.append(L1))
print(L)
del L[4] #删除元素,根据索引号index直接删除
print(L1)
L2 = [2,1,4,5,4]
print(L2.sort())#排序从小到大
print(L2)
print(max(L2))
print(min(L2))
L2.sort(reverse=True)#L.sort(reverse=True) 排序从大到小
print(L2)
L2.count(4) #统计出现元素的次数list.count(value)
#extend方法将一个列表中的元素分别加载到另外一个列表中
#list1.extend(list2)
#list.pop(index):删除元素--弹出指定索引的元素,并返回该元素;如果不指定index索引的话,弹出最后一个元素
list=["小明","小猪","小狗","小春","小刘"]
list[0:5]=[1,2,3,4,5,6]#修改整体列表元素
print(list)
六、tuple
元组是序列类型、有序、可索引、可切片、不可以修改,一旦元素被存储,以后就不能修改、删除了
元组的定义
元组是用()来定义的,多个元素之间是用逗号(,)分隔的,至少要有一个逗号
tuple1=(10,)
tuple2=()#可以定义空元组
元组的特点
元组是容器类型,可以放数字、字符串、列表、元组
tuple1 = (10,"aaa",[12,23],(12,3))
print(type(tuple1))
print(tuple1)
元组的元素是可以重复的,然后元素不可以修改
tuple1 = (10,10,10,"aaa","aaa",[12,23],(12,3))
print(type(tuple1))
print(tuple1)
七、set集合
集合是一个无序、不重复元素的数据类型
1、set集合的创建
#定义一个空的set集合
setKong = set()
#元素不能重复,会将重复的除去掉
studentName = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'}
studentSex = set("男女")
#输出和输入是不一致的
print(studentName)
print(studentSex)
2、set集合的基本用法
studentsex={"男","女"}
studentsex.add("男女")
print(studentsex)#增加元素,无序增加
student.clear()
print(studentsex)#清除set集合的元素
studentSex = {"男","女"}
ss = studentSex.copy() #拷贝集合元素
print(ss)
studentSex = {"男","女"}
ss = studentSex.copy()
print(ss)
print(studentSex-ss)#两个集合的差集是set()
studentSex = {"男","女"}
print(studentSex.pop())
print(studentSex)#无序弹出元素
studentSex = {"男","女"}
#无返回值,显示None
print(studentSex.remove("男"))
#移除后剩下{"女"}
print(studentSex)
studentSex = {"男","女"}
print(studentSex.update("好"))
#{'好', '男', '女'}#更新元素
print(studentSex)
元组自动去重复,不用操作
成员测试:
if('Rose' in student) :
print('Rose 在集合中')
else :
print('Rose 不在集合中’)
# set可以进行集合运算
a = set('abracadabra')
b = set('alacazam')
print(a)
print(b)
print(a - b) # a和b的差集
print(a | b) # a和b的并集
print(a & b) # a和b的交集
print(a ^ b) # a和b中不同时存在的元素
八、字典dictory
1、字典的定义
- 字典是通过{}来定义的
- 字典是以键、值对组成
- 字典的键是无序的、不允许重复的(set)
- 字典的值没有这种限制
set1={}#空的大括号定义的也是字典
set={1,2,3,4}#定义的是set集合
dict11 = {"黄晓明":"杨颖","文章":"马伊利","邓超":"孙俪","文章":"姚笛"}
dt = {"name":"zhangsan","password":"123456"}
print(dt)
dt["inpone"]="13109877890"
print(dt)
print(dt.keys())#求所有的键
print(dt.values())#求所有的值
print(dt.items())#求所有的键和值
print(dt.pop("inpone"))#输入对应的键返回对应的值并删除
print(dt.get("inpone"))#根据已有的键返回对应值
dict4 = dict(zip(('a','b','c'),(1,2,3)))
print(dict4)#创建一个字典
dict5 = {}.fromkeys(('a','b','c'),1)#给所有元素统一赋值
#dict5['a']=1给字典指定元素赋值
print(dict5)
清除、复制和通用操作一致
adict.update(bdict) #把b字典键值添加到a字典中