0基础 python day 3

1、上次课程回顾

 格式化输出   %s  %d  %%   

 编码:ascii 只能显示英文,特殊字符,数字

   万国码:unicode  最开始为16位,中文不够后变为32位,4个字节,但占用空间又太多,

   升级:utf-8  utf-16  utf-32

   utf-8:最少用一个字节,8位表示一个英文。

   欧洲16位,两个字节。

   亚洲 24位,3个字节

   gbk: 中国国产,只能用于中文和ascii码的文字。

2、作业讲解。

(1) 6 or 2>1  # 结果为 6

     3 or 2>1  # 结果为3

     0 or 5<4 # 结果位 F

     5<4 or3  # 结果为3

     2>1 or 6  # 结果为True

     3 and 2>1  # 结果为True

3、什么数据类型。

  int 1、2、3用于计算

  bool : True , False ,用户判断

  str : ' 密码 '  '小型数据'   '便于操作'

  list :储存大量的数据,

     ['1,2,3' , '泰格' , '123456'  ] 

  元祖 : 只读。

    (1,2,3,  '第三方')

  dict : 字典{'name' : '云姐' , 'age' : 16}

    字典{'云姐' :[] , '二哥' : [200,200,200,。。。。。。] }

  集合 : {1234, 'asdf' }

3、 bool int str 互相转换

(1)int——> str

  i=1

  s = str(i)

  print(s)

(2)str——>int

  s='1232'

  i=int(s)

  print(i)

(3)int——>bool 只要是0——>False 非零就是Ture

  i = 3

  b = bool(i)

  print(b)

(4)bool——>int  

  True   1

  False   0

PS: 

    while True:

      pass

    while 1:  # 效率高

      pass

(5)str——>bool

  s = '' ——>False #空字符串为False

  s = '0'——>True # 非空字符串为True

PS : 

  if s :

    print('您输入的用户名为空,请重新输入')

  else:

    pass

4、字符串的索引与切片

(1)索引

  s = 'ASDFGHJKL'

  s1 = s [0]

  print (s1)   # 结果为A 

  s2 = s[3]  # 结果为F

  s3 = s[0:4]

  print (s3)  #结果为 ASD ,切片:顾头不顾尾

  s4 = s[-1]

  print(s4)  # 结果为L

  s5 = s[0:-1]

  print(s5)  # 结果为ASDFGHJK

  s6=s[0:] s6=s[:]

  print(s6)  # 结果为ASDFGHJKL

  s7=s[0:5:3]  # s[首:尾:步长]

  print(s7)  # 结果为AGD

  s8=s[4:0:-1]

  print(s8) # 结果为GFDS

  s9=s[4::-1]

  print(s9)  # 结果为GFDSA

  s10=s[4::-2]

  print(s10) # 结果为GDA

  s11=s[-1::-1] # PS:s11 = s12=[::-1]

  print(s11) # 结果为LKJHGFDSA

5、字符串的操作

s = 'alexwusir'

(1)#  capitalize 首字母大写

s1 = s.capitalize() 

print(s1) 

(2)# lower  upper全部变为大写或小写

s2=s.upper

print(s2)

s21=s.lower()

print(s21)

例题:

s_str='acEQ'   # 对数字没有影响

you_input=print('请输入验证码,不区分大小写')

if s_str.upper()==you_input.upper():

  print('输入成功')

else:

  print('请重新输入')

(3) #  swapcase#大小写翻转

s3=s.swapcase()

print(s3)

(4)#  title 隔开(特殊字符,数字,空格隔开)的单词每个首字母变为大写

s='alex*e4gon_wusir,bright'  

s4=s.title()

print(s4)   # 结果为 Alex*E4Gon_Wusir,Bright

(5)#  center居中,空白填充 

s='alexWUsir'

s5=s.center(20,‘*’) #默认填充物为none(空格填充),此处用*

print(s5) #结果为******alexWUsir******  

(6)#   expandtabs

s='alex\tsir'  # \t 转换为一个Tab键,自动补到8位

s6=s.expandtabs()

print(s6)

(7) #  公共方法

s7='alex二哥'

l = len(s)

print(l)  # 结果为6

(8) #  startswith 以什么开头结尾

s='alexWUsir'

s8=s.startswith('alex')

print(s8)  # 结果为True

例子:

s='alexWUsir'

s8=s.startswith('alex')

'''

if s8:

  pass

elif s.startswith('bl'):

  pass

print(s7)

'''

s81=s.startswith('e',2,4) # 在2—4区间是否以e开头

print(s81) #结果为 True

(9)#  find    通过元素找索引,找到的话返回索引,找不到返回-1

s='alexWUsir'

s82=s.find('W')

print(s82)  # 结果为4(int)

s='alexWUsir'

s83=s.find('WU')

print(s83)  # 结果为4(int) 第一个索引

(10)#  index 通过元素找索引,找不到报错

(11)#  strip 默认删除前后空格

s='       alexWUsir    '

s9=s.strip()

print(s9)  # 结果为alexWUsir

  # 例子

username = input('请输入你的名字:').strip()

if username =='亮':

  print('恭喜亮发财')

  # 例子 有特殊字符

s='*alexWUsir%'

s91=s.strip(%*)

print(s91)  # 结果为alexWUsir,%*的顺序可随意,表示只要前后有%*就全部删除。

(12)#   count

s='alexaa  wusir'

s10 = s.count('a')

print(s10) # 结果为3,表示有3个a

(13) #  split 拆分分割   str——>list

以:为分割,原来被的分割元素(:)就没了

s=' ;alex;wusir;taibai'

l=s.split(';')

print(l)   #结果为' ' , ' alex ' , ' wusir ' , ' taibai '     alex前有空格所以被分割

(14)#  format的三种玩法  格式化输出

s = '我叫{},今年{},爱好{},再说一下我叫{}' , format('太白' , '36' , 'girl' , '太白')

print(s)

s11= '我叫{0},今年{1},爱好{2},再说一下我叫{0}' , format('太白' , '36' , 'girl' , '太白') 

print(s11)

s111= '我叫{name},今年{age},爱好{hobby},再说一下我叫{name}' , format(age=18,name='太白',hobby='girl') 

print(s12)

(15)#  replace  替换

s = '古西与红利的发放'

s12=s. replace('古西','股息')

print(s12)

6、for 循环 

(1)s = 'asdfawerfas'

for i in s:   

  print(i)

(2)s = 'dsfsdf凉凉hgdfr'

if '凉凉' in s :

  print('您的评论有敏感词') 

猜你喜欢

转载自www.cnblogs.com/mangoorangutan/p/10891245.html
今日推荐