python_字符串

一、        格式化输出

现有一练习需求,问用户的姓名、年龄、工作、爱好 ,然后打印成以下格式

------------ info of 太白金星  -----------

Name  : 太白金星

Age   : 22

job   : Teacher

Hobbie: girl

---------------- end ---------------------

只需要把要打印的格式先准备好, 由于里面的 一些信息是需要用户输入的,你没办法预设知道,因此可以先放置个占位符%s,再把字符串里的占位符与外部的变量做个映射关系就好啦

name = input('Name:')
age = int(input('Age:'))
job = input('job:')
hobbie = input('hobbie:')
info = '''
------------ info of 太白金星  -----------
Name  : %s
Age   : %d
job   : %s
Hobbie: %s
------------- end -----------------
'''%(name,age,job,hobbie)
print(info)

二、While循环:

1、while 条件:

    # 循环体

    # 如果条件为真,那么循环体则执行

       # 如果条件为假,那么循环体不执行

 

2、 终止循环:

   

    改变条件(根据上面的流程,只要改变条件,就会终止循环)。

    关键字:break。

    调用系统命令:quit(),exit() 后面会讲到,不建议大家使用。

        关键字:continue(终止本次循环)。

      3、 while……………else:

              while 后面的else 作用是指,当while 循环正常执行完,中间没有被   break 中止的话,就会执行else后面的语句

三、基本运算符:

四、数据类型:

整数(int) ,字符串(str),布尔值(bool),列表(list),元组(tuple),字典(dict),集合(set)

 

int(整数)数字:主要用于运算。1 ,2,3...

 

bool(布尔型)判断真假:True, False.

 

str(字符型)简单少量的储存数据,并进行相应的操作。name = 'alex',

 

tuple(元组)只读,不能更改。(1,'alex')

 

list(列表)大量有序数据,[1,'ses',True,[1,2,3],{'name':'jinxin'}]

 

dict(字典)大量数据,且是关联性比较强的数据        {'name':'jinxin','age':18,'name_list':['张三','李四']}

五、字符串(str):

1、 Python中凡是用引号引起来的数据可以称为字符串类型,组成字符串的每个元素称之为字符,将这些字符一个一个连接起来,然后在用引号起来就是字符串。

s1 = '太白nb'
# 对于s1这个字符串来说,它由四个字符组成:太, 白, n, b

2、字符串的索引与切片

a = 'ABCDEFGHIJK'
print(a[0])  print(a[3])  print(a[5])
print(a[7])  print(a[0:3])#ABC
print(a[2:5])#CDE
print(a[:])#ABCDEFGHIJK#默认到最后
print(a[:-1])#ABCDEFGHIJ# -1 是列表中最后一个元素的索引,
             # 但是要满足顾头不顾腚的原则,所以取不到K元素
print(a[:5:2])#ACE#加步长
print(a[-1:-5:-1])#KJIH#反向加步长

#切片就是通过索引(索引:索引:步长)
# 截取字符串的一段,形成新的字符串
# (原则就是前闭后开)。

3、 字符串常用方法:

1 判断字符串字符个数,是否以特定字符开头或结尾

    count  数字符串中的元素出现的个数

    startswith  是否已特定字符串开头

    endswith  是否已特定字符串结尾

a = 'ABCDEFGHIJK'
ret1 = a.count('A',0,4)
print(ret1)
ret2 = a.startswith('ABC',0,5)
print(ret2)
ret3 = a.endswith('IJK',0)
print(ret3)

2  split 以什么分割,最终形成一个列表此列表不含有这个分割的元素。

ret4 = 'title,Tilte,atre,'.split('t')
print(ret4)
ret5 = 'title,Tilte,atre,'.rsplit('t',1)
print(ret5)
ret6 = a.split('D')
print(ret6)

3 format的三种玩法 格式化输出

res = '{} {} {}'.format('egon',18,'male')
res1 = '{1} {0} {1}'.format('egon',18,'male')
res2='{name} {age} {sex}'.format(sex='male',name='egon',age=18)
print(res)
print(res1)
print(res2)
name = input('Name:')
age = int(input('Age:'))
job = input('job:')
hobbie = input('hobbie:')
info = '''
------------ info of 太白金星  -----------
Name  : {0}
Age   : {1}
job   : {2}
Hobbie: {3}
------------- end -----------------
'''.format(name,age,job,hobbie)
print(info)

4 去除特定字符 strip;去除前面特定字符 lsrtip;去除后面特定字符 rstrip

name='**barry***'
print(name.strip('*')) #barry
print(name.lstrip('*'))#barry***
print(name.rstrip('*'))#**barry

5 替换指定字符:replace

name='alex say :i have one alex,my name is alex'
rrr = name.replace('alex','SB',2) 2替换的个数
print(rrr)

6 is 系列

name='taibai123'

print(name.isalnum()) #字符串由字母或数字组成

print(name.isalpha()) #字符串只由字母组成

print(name.isdecimal()) #字符串只由十进制组成

print(name.isdigt())#字符只有数字组成 

7寻找字符串中元素是否存在

           

posted @ 2020-04-27 13:33  wizard骑士  阅读(183)  评论(0编辑  收藏  举报