- input与if-else的结合使用。
user_name=input('请输入用户名:') while(1): if user_name == 'Hacker_Teen': print('Welcome to bclgs!') break else: print('The User_name is Error.') user_name=input('请重新输入用户名:')
注意 elif 以及 pass(表示不执行任何操作)
-
用while实现循环。
a.while...else.....
b.break、continue
#三次输入用户名错误则用户名锁定 user_name=input('请输入用户名:') n=1 while n<3: while(1): if user_name == 'Hacker_Teen': print('Welcome to bclgs!') break else: print('The User_name is Error.') user_name=input('请重新输入用户名:') break n=n+1 print('your user_name has been locked!!!') print('--------end------------')
#登录账户三次 while count<3: user_name=input('请输入用户名>>>:') password =input('请输入密码 >>>:') if user_name=='Hacker_Teen' and password=='12345': print('欢迎登录系统') break else: print('用户名或者密码错误,请重新输入') count=count+1
3.运算符.
bool值 :True(真)、False(假)
常见运算符:+、-、*、/、//、%、**
判断某个元素是不是在某个集合中:in 、not in
逻辑运算符:not、or、and
4.数据基本类型
a.数字(int)
a1-----type ==>表示变量类型
a='123' b=int(a) print(type(a),a) print(type(b),b)
a2-----base ==>表示进制,默认为10进制
num='b'
v=int(num,base=16)
print(v)
a3-----bit_length() ==>表示数字所占位的长度
age=10 r=age.bit_length() print(r)
b.字符串(str)
b1-----.format()
test='I am {name}' v=test.format(name='Hacker_Teen') print(v)
b2------.format_map()
test='I am {name},age is {age}.' v1=test.format(name='Hacker_Teen',age=22) print(v1) v2=test.format_map({'name':'Hacker_Teen','age':22}) print(v2)
b3------index()与find()两种索引的区别
b4------isalnum ==>判断字符串里边是不是全是数字或者字母
test1='Hacker_Teen123+=' v1=test1.isalnum() print(v1) test2='123Hacker' v2=test2.isalnum() print(v2)
b5-----.expandtabs() ==>进行断句,若没遇到 ,则在指定位置断句,若遇到 ,则 后边用空格表示
test='name telphone email Hacker_Teen 15515515562 3592785@qq.com Luozheng 18865429678 18879865432@163.com ' test0=test.expandtabs(20) print(test0)
输出结果为:
b6------.join() ==>字符串的每一个字符进行拼接
test='你是风儿我是沙' t='*' v=t.join(test) print(test,v)
b7-----明确.partition()与.split()的区别
b6-----.replace() ==>用新内容替换原有内容
test="you are my gf" v=test.replace('gf','girlfriend') print(v)
c.列表(list)
c1.列表中的循环
test='你是风儿我是沙' for lll in test: print(lll)
c2.list与str之间的相互转换
#test='Hacker_Teen' #v=list(test) #print(v) #li=[11,22,'Hacker_Teen','$6'] #v=str(li) #print(v) li1=['123','Hacker_Teen'] v1=''.join(li1) print(v1)
c3.在原列表中追加 ==>append
li=[11,22,33,44] li.append('Hacker_Teen') li.append(123) print(li)
c4.浅拷贝 ==>copy clear ==>清空 count ==>计算元素个数
c5.可迭代对象的扩展 ==>extend
li=[11,22,33,44] li.extend(['Hacker_Teen','坚毅']) print(li)
c6.根据当前值获得索引位置,最左边优先 ==>index
li=[11,22,33,44,33] v1=li.index(22) print(v1)
c7.在指定索引位置插入 ==>insert
li=[11,22,33,44,33] li.insert(1,99) print(li)
c8.指定索引,默认删除最后一个值 ==>pop
li=[11,22,33,44,33] v=li.pop(2) print(li) print(v)
c9.删除列表中的指定值 ==>remove
c10.列表中元素的反转 ==>reverse
c11.列表中元素的排序 ==>sort
li=[11,33,22,33,44] li.sort() print(li)
d.元组(tuple)
e.字典(dict)
e1.字典无序
e2.字典for循环
info={'k1':'abc', 'k2':True, 'k3': {11:'张三', 12:'李四', 13:'王五' }, 'k4':(1,2,3) } #for item in info: # print(item) #---------*****--------------- #for k in info.keys(): # print(k) #for v in info.values(): # print(v) #---------*****-------------- for k,v in info.items(): print(k,v)
e3.根据key获取字典的值,若key不存在,默认为none ==>.get()
v=info.get('k3') print(v)
e4.删除并获取值 ==>pop
info={ 'k1':'abc', 'k2':True, 'k3': {11:'张三', 12:'李四', 13:'王五' }, 'k4':(1,2,3) } v=info.pop('k4') print(info) print(v)
e5.设置值,若key存在,获取原来的值,不设定
若key不存在,设定新的值
info={ 'k1':'abc', 'k2':True, 'k3': {11:'张三', 12:'李四', 13:'王五' }, 'k4':(1,2,3) } v1=info.setdefault('k111','guilty') print(v1) print(info)
e6.update的用法
#info.update(k1=123,k2=456,k4=789) info.update({'k1':123,'k2':456,'k4':789}) print(info)
f.布尔值(bool)
非假(False)即真(True),常见的False有:
None '' () [] {} 0
5.range的用法
test=input('>>>:') #生当如夏花般绚烂,死当如秋叶般静美' for item in range(len(test)): print(item,test[item])