1,昨日内容回顾
格式化输出: %s %d
编码:ascii 只能显示英文,特殊字符,数字
万国码:unicode 最开始16位,中文不够32位 4个字节
占用资源多
升级:utf-8 utf-16 utf-32
utf-8:最少用一个人字节,8位表示一个英文。
欧洲16位,两个字节
亚洲24位,三个字节
gbk:国产,仅使用中文和ascii码中的文字
作业:
什么是数据类型
int (1,2,3)只用于计算。
bool (True,False)用于判断
str (‘asd’ ‘八戒’ ‘132564’) 存储少量数据,进行操作
list [1,2,3,‘泰格’,‘56132’,] 储存大量的数据。
元祖 存储只读数据 (1,2,3,'第三方')
dict:字典{‘name’:‘李四’,‘age’:16} 存储大量的关联性数据
集合: {1,2,34,‘asd’}
字符串的操作:
s = 'alexwusir'
s1 = s.capitalize() #首字母大写
print(s1)
#全大写,全小写(对数字无效)
s2 = s.upper()
s21 = s.lower()
print(s2)
用途:s-str= ’acEQ‘
you-input = input('请输入验证码,不区分大小写')
if s-str.upper() == you-input.upper():
print('输入成功')
else:
print('请重新输入’)
#大小写翻转
s3 = s.swapcase()
print(s3)
#每个隔开的单词首字母大写(用特殊字符或数字隔开也可以)
s= 'alex egon wusir'
s4 = s.title()
print(s4)
#居中,空白填充:s.center(填充物)
s= ' alexWUsir'
s5 = s.center(20,'#')
print(s5)
#只要出现\t 自动补全至8位字节
s = ' alex\tsir'
s6 = s.expandtabs()
print(s6)
#公共方法
len() :查看有多少字符
s = 'alexafasfasgf'
l = len(s)
print(l) 结果为13
#判断字符是否以什么什么为开头(startwith),以什么什么结尾(endwith),
s = 'alexWUsir'
s7 = s.startwith('al')
s71 = s.startwith('e', 2,5) #可以规定区间
print(s7) 结果为True
#find通过元素找索引,并返回索引的下标。(找得到返回索引,找不到返回-1)
#index通过元素找索引,找不到就报错
s = 'alexWUsir'
s8 = s.find('w')
s81 = s.index('A')
print(s8,type(s8)) 结果4 <class ‘int>
#strip默认删除前后空格 rstrip lstrip:选定删除的顺序
strip('需要删除的内容')-------------------strip(’%¥‘)
s = ' alexWUsir '
s9 = s.strip()
print(s9) 结果alexWUsir
用途 username = input(’请输入名字:‘).strip()
if username ==’春哥‘:
print(’恭喜春哥发财‘)
#count:数出字符中有多少个指定的元素
s = 'alexaa wusirl'
s10 = s.count('a')
print(s10)
#split 分割 str------>list (重要)
s = 'alex:wusir:taibai'
l = s.split(':')
print(l)
#format的三种玩法 格式化输出
s = '我叫{},今年{},爱好{},再说一下我叫{}'.format('太白',36,'girl','太白')
print(s)
s = '我叫{0},今年{1},爱好{2},再说一下我叫{0}'.format('太白',36,'girl')
print(s)
s = '我叫{name},今年{age},爱好{hobby},再说一下我叫{name}'.format(name='太白',hobby='girl',age=36)
print(s)
#replace(’需要被替换内容‘,’替换内容‘,次数)-------->替换
s = '发生过距离首府拉萨放假啊立刻解放'
s11 = s.replace('拉萨',’老王‘,1)
print(s11)
#for循环 有限循环
s = 'askls'
for i in s:
print(s) 结果:a s k l s
3,int
i = 2
i.bit_length() #查看二进制位数
print(i)
'''
bit_length()
1 0000 0001 1
2 0000 0010 2
3 0000 0011 2
'''
4,bool
#bool True False
#int ----> str
i = 1
s = str(1)
#str ----> int(str只能是数字)
s = '321'
i = int(s)
#int---->bool 只要是0 ---->False 非0就是True
i = 3
b = bool(i)
print(b)
#bool ---> int
#True-->1 False-->0
'''
ps:
while True:
pass
while 1: #效率高
pass'''
#str--->bool
#s = '' ---->False
#非空字符串都是True
#s = '0' ---->True
s
if s:
print('你输入的为空,请重新输入')
else:
pass
5,str
#字符串的索引与切片
s = 'ADCDLSESRF'
#索引
s1 = s[0]
print(s1) #结果A
#切片 [起始位:末位]:顾头不顾腚
s3 = s[0:3]
print(s3) #结果ADC
s3 = s[-1] #结果F 从后往前取
print(s3)
s4 = s[:] #全取到(两种方法) 结果:ADCDLSESRF
print(s4)
s5 = s[0:]
print(s5)
s6 = s[0:5:2] #s[头:尾:间隔] 跳着取 结果:ACL
print(s6)
s7 = s[3::-1] #s[尾::间隔] 倒着取 结果:DCDA
print(s7)