python基础语法2
- 变量
- 数据类型与类型转换
- 列表
- 添加列表元素
- 修改元素
- 删除列表元素
- 组织列表
- 创建数值列表
- 操作列表
- 元组
- 元组转列表
- 字典
- 创建字典
- 列表取值
- 字典删除增加修改
变量
变量命名要求:
1.只能是一个词
2.只能包含字母、数字、下划线
3.不能用数字开头
变量定义位置不同影响作用域
全局变量可以在定义时加global
有本地变量,实例变量等
数据类型与类型转换
字符串str,用引号'11111'
括起来
浮点数float,带小数点的数字
整数int,不带小数点的数字
转换成str:对数据没有要求
转换成float:符合浮点数规则的字符串和整型数据
转换成int:符合整数规则的字符串和浮点数(抹零取整,向下取整)
如果对一个浮点数要进行四舍五入,可以加0.5
a = 3.6
print(int(a))#3
print(int(a+0.5))#4
列表
注意,引用列表元素时要使用方括号[ ],不能用()
会出现“list object is not callable”的错误
name=['A','B','C'] #定义一个名为name的列表
a,b,c=name #将name里的元素逐个赋值给a b c
print(a,b,c) #一次输出多个,用,间隔,换行输出(a,'\n',b,'\n')
print(name(-3)) #逆序访问
for i in name:print(i) #将列表元素依次赋值给i,从0位开始检索遍历
添加列表元素
append()函数,在列表末尾加
>>>name.append('D')
>>>print(name)
['A','B','C','D']
insert()函数,在指定位置加
>>>name.insert(1,'b')
['A','b','B','C']
修改元素
直接修改
>>>name[2]='D'
>>>print(name)
['A','B','D']
删除列表元素
del()函数,删除指定位置元素
>>>del name[1]
>>>print(name)
['A','C']
remove()函数,不知道位置,知道要删除那个元素
>>>name.remove('C')
>>>print(name)
['A','B']
pop()函数,删除指定位置元素,并继续使用该元素
>>>name1=name.pop(0)
>>>print(name,'\n',name1)
['B','C']
A
组织列表
永久性排序sort()函数`name.sort()#按照字母顺序name.sort(reverse=Ture)#按照字母逆
a = ['python', 'ruby', 'c', 'java']
a.sort()#按照字母顺序排列
print(a)#['python', 'ruby', 'c', 'java']
a.sort(reverse=True)#加上True 按照字母逆序排开
print(a)#['c', 'java', 'python', 'ruby']
临时排序sorted()
a = ['python', 'ruby', 'c', 'java']
print(a)#['python', 'ruby', 'c', 'java']
sorted(a)#['c', 'java', 'python', 'ruby']
print(a)#['python', 'ruby', 'c', 'java']
print(sorted(a))#['c', 'java', 'python', 'ruby']
倒着打印列表reverse(),永久性修改了排列的元素
name.reverse()
print(name)#['C','B','A']
创建数值列表
range()函数,生成一系列数字
list()函数,将里面的参数转换成列表,还可以进行简单运算
>>>c=list(range(1,10))
>>>d=list(range(1,10,2))
>>>min(c)
>>>max(c)
>>>sum(c)
操作列表
切片:,相当于把列表其中的一部分切出来。要创建切片,可以指定第一个元素和最后一个元素的位置,切片到达第二个元素的前一个元素停止切片,类似于函数range( )
复制列表:要使用切片复制,用赋值‘=’仅仅是指向第一个列表
a = ['python', 'ruby', 'c', 'java']
#切片
print(a[1:3])#['ruby', 'c']
print(a[:2])#['python', 'c']
print(a[2:])#['c', 'java']
print(a[-3:])#倒数第三个到最后一个 ['ruby', 'c', 'java']
#复制
a.append('css')
b=a[:]
c=a
print(a)#['python', 'ruby', 'c', 'java', 'css']
print(b)#['python', 'ruby', 'c', 'java']
print(c)#['python', 'ruby', 'c', 'java', 'css']
元组
用小括号()定义,不可修改
name1=('张三','李四','王五')
name2=('张三',)#元组中只有一个元素时,要加上','否则就会被当成运算符
元组可以用下标取值,可以倒数取值
元组转列表
num=(1,2,3)
num1=list(num)
print(num) #(1,2,3)
print(num1) #[1,2,3]
字典
- 字典使用花括号 {} 或 dict 来创建,字典是可以嵌套使用的
- 字典是成对出现的,字典以键 (key) 值 (value) 对形式体现
- 键与值之间用冒号 : 分隔,每个键值对之间用逗号 , 分隔开
- 字典的 key 是唯一的,而 value 可以重复出现
创建字典
用花括号{}或者dict函数,和fromkeys
emp1={'name':'zhangs','age':22,'sex'='男'}
emp2=dict(name='zhangs',age=22,sex='男')
#运行效果一样
emp3=dict.fromkeys(['name','age','sex'])
print(emp3)
#{'name':None,'age':None,'sex':None}
emp4=dict.fromkeys(['name','age','sex'],'N/A')
print(emp4)
#{'name':'N/A','age':'N/A','sex':'N/A'}
列表取值
两种方式
1.在字典名后用方括号输入key
2.get取值,如果不存在key,返回None或者是指定值
emp1 = {'name':'zhangs','age':22,'sex'='男'}
print(emp1['name'])#zhangs
a = emp1.get('name')
print(a)#zhangs
b = emp1.get('jobs','其他')
print(b)#其他
字典删除增加修改
增加与修改操作一样,只不过是看元素是不是在字典里原本就有
#单个新增修改
emp1={'name':'zhangs','age':22,'sex'='男'}
emp1['name']='lis'
#批量新增修改
emp.update(dept='推广部',job='职员')
删除可用pop和popitems
emp1={'name':'zhangs','age':22,'sex'='男'}
sex=emp1.pop('sex')
#删除指定键和对应值,pop返回值,即sex==男
a=emp1.popitems()
#删除最后一个键值对,返回一个元组,a==('sex','男')
用clear清空列表
emp1.clear()
#emp1是一个空字典,输出为{}