回顾&补充
-
面试题
#数据类型判断
a = 1 #int
b = (1) #int
c = ('1') #str
d = (1,) #tuple -
int
-
py2/py3
-
除法
-
强制转换:
-
-
int(布尔值)
-
-
-
bool :0-空字符串-空列表-空元组-空字典为False
-
强制转换:
-
bool(整数) -> bool(1)/..
-
bool(字符串) -> bool('xx')
-
bool(列表) -> bool([x,])
-
bool(元组) -> bool(())
-
-
v1 = bool(0)
v2 = bool("")
v3 = bool([])
v4 = bool(())
print(v1,v2,v3,v4) # False
-
str
-
独有功能:upper/lower/split/strip/replace/isdigit/startswith/endswith/format/join/encode
-
公共公共:
-
len
-
索引
-
切片
-
步长
-
for循环
-
删除【无】
-
更新【无】
-
-
强制转换:
-
str(999) # "999"
-
str(True) # "True"
-
str(["唐开发",'李忠伟']) # "["唐开发",'李忠伟']" --> v2 = "".join(["唐开发",'李忠伟'])
-
str(["唐开发",'李忠伟'])
-
-
-
list
-
独有功能:append/insert/pop/remove/clear/ extend
-
公共功能:
-
len
-
索引
-
切片
-
步长
-
for循环
-
删除
-
更新
-
-
强制转换:
-
list("asdfadfasfdadfasfd")
v1 = list("asdfadfasfdadfasfd")
print(v1) #['a', 's', 'd', 'f', 'a', 'd', 'f', 'a', 's', 'f', 'd', 'a', 'd', 'f', 'a', 's', 'f', 'd'] -
list( (11,22,33,44,) )
v1 = list( (11,22,33,44,) )
print(v1) #[11, 22, 33, 44] -
-
-
tuple
-
独有功能【无】
-
公共功能:
-
len
-
索引
-
切片
-
步长
-
for循环
-
删除【无】
-
更新【无】
-
-
强制转换:
-
tuple('adfadfasdfasdfasdfafd')
v1 = tuple('adfadfasdfasdfasdfafd')
print(v1) # ('a', 'd', 'f', 'a', 'd', 'f', 'a', 's', 'd', 'f', 'a', 's', 'd', 'f', 'a', 's', 'd', 'f', 'a', 'f', 'd') -
tuple([11,22,33,44])
v1 = tuple([11,22,33,44])
print(v1) # (11, 22, 33, 44)
-
-
-
常见的类型转换
# 字符串转数字
# 数字转字符串
# 列表转元组
# 元组转列表
# 其他转bool时,只有:0 “” [] ()
# 列表转字符串:
nums = [11,22,33,44]
for a in range(0,len(nums)):
nums[a] = str(nums[a])
result = ''.join(nums)
print(result)
字典
-
字典:帮助用户表示事物的信息(事物有多个属性)
-
基本格式:字典键的数据类型不能为list和tuple,值可以为任何类型.
dictionary = {'键':'值','键':'值','键':'值'}
-
独有功能:
info = {"name":'刘伟达','age':18,'gender':'男','hobby':'同桌'}
-
获取字典info所有键.keys()
for i in info.keys():
print(i) -
获取字典info所有值.values()
for i in info.values():
print(i) -
获取字典info所有的键值对.items()
for i in info.items():
print(i)
-
-
公共功能:
-
len()一个键值对为一个元素
-
索引
info = {"name":'刘伟达','age':18,'gender':'男','hobby':'同桌'}
info['name']
info['age'] #####========>>>字典索引为键 -
切片【无】
-
步长【无】
-
for
info = {"name":'刘伟达','age':18,'gender':'男','hobby':'同桌'}
for item in info.keys():
print(item)
for item in info.values():
print(item)
for a,b in info.items():
print(a,b) #name 刘伟达
#... -
修改(存在就修改/不存在就增加)
#改值
info = {"name":'刘伟达','age':18,'gender':'男','hobby':'同桌'}
info[age]=20
print(info) #{"name":'刘伟达','age':20,'gender':'男','hobby':'同桌'}
#改键:先删除键值,再添加,不能直接修改
del info['hobby']
info['xxxxx'] = 'x1' -
删除 del[]
info = {"name":'刘伟达','age':18,'gender':'男','hobby':'同桌'}
del info['name']
print(info)
-
重点
-
int
-
bool
-
str
-
list
-
tuple
-
dict
经典例题
#创建出一个用户列表,然后让用户输入用户名和密码进行登陆。
"""
user_list = [
{'user':'alex','pwd':'123'},
{'user':'oldboy','pwd':'123'},
{'user':'lishaoqi','pwd':'1123'},
{'user':'liqihang','pwd':'123'},
{'user':'xxx','pwd':'123'},
# N退出输入]
"""
lis=[]
while True:
k = input('请输入user:')
if k == 'N':
break
v = input('请输入pwd:')
usr_list = {'user':k,'pwd':v}
lis.append(usr_list)
print(lis)
a = input('请输入用户名:')
b = input('请输入密码:')
c = '输入错误,登录失败'
for i in lis:
if a == i['user'] and b==i['pwd']:
c = '输入正确登成功'
print(c)
break
print(c)