一、Dictionary字典
语法格式:{键:值,键:值,... ...}
实例:
myDict = {'name':'张c','age':18}
字典值的添加
当给原字典添加了一个不存在的键对应的值的时候 则为添加。
myDict = {'name':'张三'}
myDict['age'] = 18 #将age:18 添加到 字典myDIct里
字典的值的修改
当给字典已存在的键赋新值的时候 是对键key的值的修改
myDict = {'name':'张三'}
myDict['name'] = '李四' #将键key 为name的值修改为李四
字典的值的删除
myDict = {'name':'张三'}
del myDict['name'] #将键key为name的键值对删除
使用dict将键值对的序列构造成字典
#想使用函数dict转换成字典 前提必须是键值对的形式
myList = [('name','张三'),('age',11),('sex','男'),('hobby','嗨,爱你呀')]
myList = [{'name','zhang'},{'age',12},{'sex','nan'},{'hobby','嗨,爱你吖'}]
myList = [['name','张三'],['age',11],['sex','男'],['hobby','嗨,你好']]
print(type(myList))
print(dict(myList))
注意:
1.字典是一种映射类型 元素是键值对形式
2.字典的键 为不重复类型(否则会被覆盖)
3.创建空字典使用{}
4.字典的取值是通过唯一的key 而不是向列表,元组...通过偏移量取值
常用函数
函数名 | 函数说明 |
---|---|
myDict.items() | 返回能够进行遍历的键值对的列表 |
dict() | 可以将成对的列表构造成字典 |
myDict.clear() | 清空字典 |
myDIct.keys() | 获取所有的键 |
myDict.values() | 获取所有的值 |
myDict.pop(key) | 弹出key对应的值 |
myDict.popitem() | 删除字典最后一个键值对 |
copy() | 浅复制 |
copy.deepcopy() | 深复制 |
数据类型的转换
函数名 | 函数的说明 |
---|---|
int(x) | 将x转换成一个整数 |
float() | 转换成浮点型 |
bool() | 转换成布尔型 |
str() | 转换成字符串 |
dict() | 转换成字典 |
list() | 转换成列表 |
tuple() | 转换成元组 |
set() | 转换成集合 |
eval(str) | 计算字符串中的有效表达式(本身的类型进行返回) |
二、运算符
一、算术运算符
- +加
- -减
- *乘
- /除
- %余
- **x的y次方
- //整除
注意:0可以作为被除数,但不可以作为除数
二、比较运算符
- == 等于
- != 不等于
- > 大于
- <小于
- >= 大于等于
- <= 小于等于
#python可以多个值一起比较大小
print(1<10<3) #False
print(1<3<5) #True 3大于1且小于5
三、赋值运算符
- +=
- -=
- *=
- /=
- %=
- **=
- //=
四、逻辑运算符
and | 逻辑与 两侧为真才为真 | a and b |
---|---|---|
or | 逻辑或,一侧为真就为真 | a or b |
not | 逻辑非 真为假,假为真 | not (a>b) |
#如果第一侧为真 会返回第二个数的值
print(10 and 20) #20
print(10 and 0) #0
#如果第一次侧为假则返回假的值
print(0 and 2) #0
print(3 > 5 and 1 > 2) # False 两侧为假返回假
print(1 < 2 and 3 > 2) # True 两侧为真返回真
# 如果前面为真 返回前面的值(True 或者对应的值),前面为假返回后面对应的值
print(1 or 2) # 1
print(True or 5) # True
print(0 or 2) # 2 前面为假 返回后面的值
print(False or 0) # 0
print('a' or 0) # a
五、成员运算符
in | 值再指定的序列中 返回真 否则假 |
---|---|
not in | 值不在指定的序列中 返回真否则假 |
六、身份运算符
is | 判断两个标识符是否引用同一个对象 |
---|---|
is not | 判断两个标识符是否不是引用同一个对象 |
x = 3
y = 3
z = 4
# id() 查看变量所存储值的地址编号
print(id(x)) # 1383424288
print(id(y)) # 1383424288
print(id(z)) # 1383424320
print(x is y) # True
print(x is z) # False
print(x is not z) # True
七、位运算符
^ | 按位异或运算符 转换成二进制当两位不同的时候为1 |
---|
# 法一:交换ab的值
x = 2
y = 3
x, y = y, x
print(x, y) # 3 2
# 法二: 交换ab的值
a = 2 #0010
b = 8 #1000
a = a ^ b #1010
#0010
#1000
#1010
b = a ^ b #0010
#1010
#1000
#0010
a = a ^ b #1000
#1010
#0010
#1000
print(a, b) # 8 ,2
三、流程控制
顺序结构
分支结构
循环结构
一、分支结构
(1)单一分支结构
结构:
if条件表达式:
为真的时候执行的代码块
(2)双向分支结构
结构:
if 条件1:
为真的时候执行的代码块
else:
为假的时候执行的代码块
(3)多向条件分支
if 条件1:
满足条件1的时候执行的 代码块
elif 条件2:
满足条件2的时候执行的 代码块
elif 条件3:
满足条件3的时候执行的代码块
...
else:
以上都没有满足的走 else
(4)巢状分支结构
if 条件:
if 条件:
为真的代码块
else:
为假的代码块
else:
if 条件:
为真的代码块
else:
为假的代码块
二、循环结构
for
while
(1)for 循环
可以遍历任何的序列 如:一个字符串,列表,元组
语法结构:
for 接收参数的变量 in 要遍历的值:
循环的代码块
例:
for i in range(10):
print(i)
注意:当条件不满足的时候 跳出循环体
continue 跳出本次循环 继续下一次循环
break 跳出循环体
for i in range(1,10)
if i == 3
continue #跳出本次循环
for i in range(1,10)
if i == 3 :
break #跳出循环
(2)while循环
主体结构:
while条件表达式:
循环体
2)和else搭配
while 条件表达式:
循环体
else:
print('自动执行结束后走else()和for循环一样')
注意: 如果表达式一直为真则为死循环
网友评论