Python-回顾知识点-分析练习题
1、编码
ascii -8
unicode -16,32
utf-8 -8 ~ 32
gbk -16
2、条件语句
if 条件:
pass
elif 条件:
pass
else:
pass
3、变量
name = "xxx"
1、可以数字,字母,下划线之间任意组合
2、不能是数字开头
3、不能使用Python里的内部关键字
4、不要使用Python中已经使用的变量:list,str,tuole,dict,bool,int
5、建议:见名之意
4、字符串格式化
"aad%s,111%d" % ("xxx",6)
5、运算符
- 除法(oy27中 9/2 = 4,py35中 9/2 = 4.5)
- 字符串可以相乘,相加
- += 自加 -=自减
-or and 顺序
-in
dic = {
"k1": "v1"
"k2": "v2"
}
li = [11,22,33,44]
#1.列表,查看是否存在其中
if 11 in li:
pass
#2.字典,查看key是否在其中
"k1" in dic
for item in dic:
print(item)
for k in dic.keys():
print(k)
if "k1" in dic:
pass
3.字典,,查看value是否在其中
查看是否在存在, vi in dic.values():
4.字典,查看value是否在其中
循环实现,检查"v1"是否在字典dic = {'k1': 'v1','k2': 'v2'}的值中
val = "v1"
result = False
for item in dic.values():
if item == val:
result = True
break
print(result
6.数据类型
int - 整数
-最少用多少二进制位表示(bit_length())
字符串:
-大小写
-首字母大写
-分割
a,b = split("*",1)
-去除空白
-替换
-"xxx".join(["11","22"])
-是否是十进制数
列表:
-追加
-插入
-反转
-长度
-for循环
-删除:del li[0]
li[0:3:1]
-嵌套:
[
1, [22,33]
"asda"
]
补充:
1. 索引为奇数值,删除
# 删除列表元素时,会影响列表长度,从而使得索引取值时,容易出现错误。
li = [11,22,33,44,66]
li = [11, 22, 33, 44, 66] # 0
# 索引为奇数值,删除
for i in range(0,len(li)): # 4,0
del li[i]
print(li)
# 解决方案一:
# li = [11, 22, 33, 44, 66] # 0
# new_list = []
# # 索引为奇数值,删除
# for i in range(0,len(li)):
# if i%2 == 0:
# new_list.append(li[i])
# li = new_list
# print(li)
# 解决方案二:
# li = [11, 22, 33, 44, 66] # 0
# # 索引为奇数值,删除
# for i in range(len(li)-1,-1,-1): # 4,0
# if i%2 == 1:
# del li[i]
# print(li)
2.切片 + 步长
li = [11, 22, 33, 44, 66]
li[0:4]
del li[0:4:2]
print(li)
tuple-元祖
-元素,不可变
-只有一个元素时,一定加逗号
# val = (1,2,3,4,555,6)
# print(val,type(val))
# val = (1)
# print(val,type(val))
# val = (1,)
# print(val,type(val))
字典-dict
dic = {'k1':"v1",'k2':'v2'}
data = dic.get('kk1') # None
len
dict['k1'] = "vv1"
for
val = "v1" in dic # False
# 出错点
# 题:dic = {'k1':"v1",'k2':'v2'}把key="k1",键值对删除
# del dic['k1']
# 题:dic = {'u1':"v1",'k2':'v2','k3':'v3'}把key中存在k,键值对删除
dic = {'u1':"v1",'k2':'v2','k3':'v3'}
# 不要在循环当前字典的过程中,修改当前字典大小
# 错误
# for key in dic:
# if 'k' in key:
# del dic[key]
# 正确方式
dic_key_list = []
for key in dic:
dic_key_list.append(key)
for row in dic_key_list:
if 'k' in row:
del dic[row]
print(dic)
字符串和布尔值相互转换
v = "123"
val = int(v)
v = 123
val = str(v)
list
v = (1,2,3,)
val = list(v)
# val = []
# for item in v:
# val.append(item)
tuple
v = [11,22,33,44]
val = tuple(v)
布尔值-True,False
False:0,None,"",{},[],()
7. for和while
continue
break
for i in range(1,10):
print(i)
for i in range(10,20):
print(i)
for i in range(1,10):
print(i)
break
for i in range(10,20):
print(i)
for i in range(1,10):
print(i)
for i in range(10,20):
print(i)
break
for i in range(1,10):
print(i)
for i in range(10,20):
print(i)
break
break
for i in range(1,10):
print(i)
for i in range(10,20):
print(i)
break
flag = False
for i in range(1,10):
print(i)
if flag:
break
for i in range(10,20):
print(i)
flag = True
break
==================
for i in range(1,10):
print(i)
continue
for i in range(10,20):
print(i)
for i in range(1,10):
print(i)
for i in range(10,20):
continue
print(i)
===================
for i in range(1,10):
print(i) # 1,2
for j in range(i,10): # 2,9
print(j)
for i in range(1,10):
print(i)
for j in range(10,i,-1):
print(j)
练习题讲解:
12.请用代码实现:
li = [‘alex’,’eric’,’rain]
利用下划线将列表的每一个元素拼接成字符串"alex_eric_rain"
li = ['eric','alex','rain']
v = "_".join(li)
print(v)
13.实现一个整数加法计算器:
如:
content =input('请输入内容:')# 如用户输入: 5+9或 5+ 9或 5 + 9,然后进行分割再进行计算
content = input('>>>') # 5+9
a,b = content.split('+')
a = int(a)
b = int(b)
print(a+b
14.计算用户输入的内容中有几个整数?
如:
content =input('请输入内容:') #如:asduiaf878123jkjsfd-213928
content = input('>>>') # sdfsdf123sdf123
val = 0
for count in content:
if count.isdecimal():
val += 1
18.扩展题
# 如果用户输入的内容中存在任意关键字,则提示用户重新输入
# 否则,打印结束
li = ['东京热','苍老师','日本']
while True:
has_key = False
content = input('>>>>') # 我叫
# 循环所有关键字,查看是否内容中存在?
for k in li:
if k in content:
print('请重新输入')
has_key = True
break
if has_key == False:
break
27.有两个列表
#l1 =[11,22,33]
#l2 =[22,33,44]
li = [11,22,33,44,55,66,77,88,99]
dic = {'k1':[],'k2':[]}
for item in li:
if item > 66:
dic.get('k1').append(item)
# dic['k1'].append(item)
elif item < 66:
dic.get('k2').append(item)
li = [11,22,33,44,55,66,77,88,99]
dic = {}
# dic = {'k1':[11,]}
# dic = {'k1':[11,22,33,44,55],'k2': [77,88,99]}
for item in li:
if item <66:
# 11,22,33,44,55
if 'k1' not in dic:
dic['k1'] = [item,]
else:
dic['k1'].append(item)
elif item > 66:
if 'k2' not in dic:
dic['k2'] = [item,]
else:
dic['k2'].append(item)
print(dic)