美文网首页
2018-09-28 day4-总结

2018-09-28 day4-总结

作者: 高宇的简书昵称 | 来源:发表于2018-09-28 20:28 被阅读0次

    一、字符串元素

    1.阻止转义

    在字符串的最前面可以添加r/R来阻止字符串中的转义字符转义

    str1='how  \are you\n  fine '
    str2=r'how  \are you\n  fine '
    print(str1)
    print(str2)
    

    2.python中可以吧字符串看成一个序列(容器),容器中的内容就是字符,

    每一个字符可以看成是字符串中的元素
    字符串是一个不可变的序列(不可变指的是字符串中的每个字符,以及每个字符的位置不可变)

    str2='hello'       #字符串一旦确定,不可变,(内容不可变,位置不可变)
    

    3.获取字符串中的单个字符(字符串下标不能越界)

    语法:字符串[下标]--->根据下标获取字符串中的字符 下标只能是整数,下标可以写变量
    说明:a.字符串:可以是字符串的变量,也可以是字符串值
    b.[]:固定写法
    c.下标:0 ~ 字符串长度-1 -1: -1 ~ -长度
    Python中的每一个字符串中的字符,都有一个对应的下标,下标是根据字符在字符串中的位置,从前往后依次增加的

    下标有两种标法:

    str3='python'  
    #   p-->0     y-->1     t-->2    h-->3   0-->4     n-->5 
    #   n-->-1    o-->-2    h-->-3   t-->-4  y-->-5    p-->-6
    print(str3[2])      #t  
    print(str3[-4])     #t   
    

    一个空格算一个字符,一个TAB键(制表符)算一个字符,一个转义字符算一个字符

    str4='good good study\n day day up!'
    print(str4[-11])
    print(str4[17]) 
    

    4.获取字符串中的部分字符(切片)

    a.
    **语法字符串[起始下标:结束下标]--->获取字符串中起始下标开始,到结束下标前的所有的字符
    注意:起始下标对应的字符要在结束下标对应的字符的前面,否者不能取到值
    正负下标可以同时

    str5='同九年,汝何秀!'
    print(str5[1:5])     #九年,汝
    print(str5[5:2])     #取不到值
    print(str5[5:-1])    #何秀
    

    b.
    语法:字符串[下标1:结束下标:步长]-->从起始下标开始获取,每步长获取一个,获取到结束下标前为止。
    步长为正:从前往后取,起始下标要在结束下标前面(从起始下标开始获取,每步长获取一个,获取到结束下标前为止。)
    步长为负:从后往前取,起始下标要在结束下标后面(从结束始下标开始获取,每步长获取一个,获取到起始下标前为止。)

    str6='海贼王、一拳超人、一人之下、进击的巨人'
    print(str6[1:10:2])   #贼、拳人一
    print(str6[10:0:-1])  #人一、人超拳一、王贼
    

    c.切片时下标可以省略,省略不同的下标有不同的意义
    1.省略起始下标:字符串[:结束下标]---->从开头取(注意:这儿的开头可能是第一个字符,也可能是最后一个字符)

    str7='阁下何不同风起,扶摇直上九万里'
    print(str7[:4])    #阁下何不  
    print(str7[:4:-1]) #里万九上直摇扶,起风
    

    2.省略结束下标:字符[起始下标:]---->从开始下标取,取完为止

    print(str7[-4:])     #上九万里
    print(str7[-4::-1])  #上直摇扶,起风同不何下阁
    

    3.两个下标都省:字符[:]---->全部取完

    print(str7[:])      #阁下何不同风起,扶摇直上九万里
    print(str7[::-1])   #里万九上直摇扶,起风同不何下阁
    

    4.切片下标可以越界

    print(str7[-100:7])      #阁下何不同风起
    

    二、字符串运算符

    python中的字符串支持+、*和比较运算符

    1.字符串中的+号运算符---->将字符串1和字符串2拼接在一起产生一个新的字符串

    str1='玉树临风美少年'
    str2='夜不眠揽镜自顾'
    str3=','
    print(str1+str3+str2)   #玉树临风美少年,夜不眠揽镜自顾
    
    **注意:+号两边要么数字要么字符串,类型要一致

    2.*

    字符串1*n(整数)---->字符串重复n次,产生一个新的字符串,0就不会打印出来,负数也没有

    str4='家有千金,行止由心'
    print(str4*2)   #家有千金,行止由心家有千金,行止由心
    

    先算乘法再算加法

    print(str1+str2*2)   #玉树临风美少年夜不眠揽镜自顾夜不眠揽镜自顾
    

    3.比较运算符

    判断相等

    print('abc'=='abc')  #Ture
    print('abc'!='ab')   #Ture
    

    比较大小:比较两个字符串中从前往后每个字符串的编码值的大小,直到比出大小
    若比出大小,后面的字符串就不比了

    print('adfv'>'zab')   #False
    print('你好'>'safgd') #Ture
    print('a'<='j'<='z')  #Ture
    

    4.in和not in

    字符串1 in 字符串2--->判断字符串1是否在字符串2中
    结果是布尔值

    print('ab' in 'abc')        #Ture
    print('ab' not in 'abc')    #False 
    print('ab' in 'adbc')       #False   位置也要在相对正确的位置
    str7='今天的感觉真好'
    print(str7[len(str7)-1])
    

    5.len()函数

    len是Python内置函数,功能是用来获取序列号的长度(容器中元素的个数)
    len(序列)
    字符串的长度就是字符串中字符的个数
    print(len('hello'))   #5
    print(len('你好吗?我时')
    

    三、格式字符串

    格式字符串

    字符串的内部,通过格式占位符来表示字符串中变化的部分,然后在后用值来填充变化的部分
    语法:带有占位符分字符串 % (给占位符赋值的值)
    注意:前面有多少个占位符,后面就要有多少个值
    %s ----> 字符串
    %d ----> 整数
    %f ----> 小数
    %.nf ----> 保留小数点后n位小数(五舍六入)
    %c ----> 字符

    name='李四'
    age=18
    money=10.567
    message='姓名'+name+'年龄'+str(age)+'工资'+str(money)
    message='姓名:%s 年龄:%d 工资 %.2f' %(name,age,money)
    print(message)
    print('%d,%.3f'%(97,97))
    

    五、字符串的內建函数

    python内部给我们提供了很多字符串相关的使用方式
    使用方法:字符串.方法名(参数)
    1.capitalize() : 将字符串的第一个字符转换为大写,返回一个新的字符串
    如果第一个字符不是字母,就不转换

    str1='love'
    str2=str1.capitalize()
    print(str2)
    

    2.字符串对齐

    a.center(width,fillchar)

    b.ljust(width,fillchar)

    c.rjust(width,fillchar)

    width-->长度,新的字符串的总共的长度 fillchar-->剩下部分填充的字符(字符就是长度是1的字符串)
    字符串1.center(m,x)

    str3='xxx'
    print(str3.ljust(7,'0'))   #xxx0000
    num1='789'
    print(num1.center(7,'0'))
    num='78'
    new_str=num.rjust(4,'0')
    print('python1807'+new_str)
    

    3.字符串1.count(字符串2):统计字符串1中有多少个字符串2

    str1='asfsfsfbimc';str2='fs'
    print(str1.count(str2))   #2
    
    

    4.字符串1.endswith(字符串2)---->判断字符串1是否以字符串2结尾

    str1 = 'when i was'
    print(str1.endswith('was'))
    print(str1.endswith('when'))
    

    5.字符串1.find(字符串2):检测字符串1中是否有字符串2,并返回所在位置的下标

    在字符串1中查找字符串2查找并返回从左往右第一个的首位下标,如果没有找到,就返回-1

    str1 = 'was when i was young,was i have a dream Z'
    print(str1.find('was'))
    print(str1.find('wasaa'))
    print(str1.find('Z'), len(str1))  
    

    6.isnumeric()

    print('1234'.isnumeric())
    print('一二五七九'.isnumeric())
    print('二百五'.isnumeric())
    print('壹萬'.isnumeric())
    

    7.isTitle()

    标题化:每个单词首字母大写,其他字母小写

    print('The One'.istitle())
    

    8.字符串1.join(字符串2)

    str1='aaa'
    str2='xyz'
    print(str1.join(str2))   #xaaayaaaz
    

    相关文章

      网友评论

          本文标题:2018-09-28 day4-总结

          本文链接:https://www.haomeiwen.com/subject/tvqmoftx.html