zoukankan      html  css  js  c++  java
  • 01-Python基础之字符串

     

    字符串

    ----------------------------------------------------------------------------------------------------------------------------------

            主要内容

          1.字符串介绍

          2.for循环字符串使用

          3.字符串切片

          4.字符串的常用方法

    ------------------------------------------------------------------------------------------------------------------------------------

    1.字符串介绍                                                                                                             

    在python代码中,字符串即是使用引号 '  '  括起来的一堆数字、字母或其他符号组合在一起的数据。

    如下行所示:

    s = 'ABCDLSESRF'

    注:使用函数input输入的数据也是字符串类型,即如下

    1 #data是一个str类型,如需使用int,需强制转换int(data),新手尤其注意
    2 data = input("请输入一个数字:")    

     

    2.for循环的字符串使用

    for循环使用字符串是遍历每个字符,如:

    s = 'qwertyuiop456789@#$%^&*'#定义字符串
    li = []  #定义空列表存储遍历的值
    for i in s:
        li.append(i)  #值遍历值加入li列表
    #打印列表
    print(li)
    
    #打印li列表值结果如下:
    ['q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', '4', '5', '6', '7', '8', '9', '@', '#', '$', '%', '^', '&', '*']

    注:for后面的对象需要是可迭代的

    3.字符串切片

    s = 'qwerty*'#定义字符串
    #字符串索引值从0开始,s = [start:end:step]  取值规律:顾头不顾尾巴
    
    s1 = s[:]      #全取,相当于s1 = s,s1 =  qwerty*
    s2 = s[0:]     #从0去到最后,也相当于全取值,s1 =  qwerty*
    s3 = s[:5]      #取到第五个,但是不包括第五个,实际取到第四个[ )前开后闭,s3 =  qwert
    s4 = s[2:5]     #取第二个到第四个,s4 =  ert
    s5 = s[2:]       #从第二个取到结束,s5 =  erty*
    s6 = s[:-1]     #开始取到倒数第二个,即出去最后一个全取,s6 =  qwerty
    s7 = s[1:-1:2] #第一个取到倒数第一个,不包括倒数第一个,2为步长,隔一个取一个,s7 =  wry

    4.字符串常用方法

    字符串的方法是一个强大的功能,在使用时候,能给我们带来很多方便。如下代码所示。

     1 #字符串方法
     2 
     3 s = ' qwer12 345 @#$%^ '
     4 #字符串分割,将s字符串按1分割为列表,返一个列表,不包括分割的字符,s1 = [' qwer', '2 345 @#$%^ '],
     5 s1 = s.split('1')
     6 print(s1)
     7 #查找索引值,在字符串中查找‘1’的值,返回索引值,下标从0开始,找不到报错,s2 = 5
     8 s2 = s.index('1')
     9 print(s2)
    10 #也是查找索引值,在字符串中查找‘1’的值,返回索引值,下标从0开始,找不到返回-1  S3=-1
    11 s3 = s.find('6')
    12 print(s3)
    13 
    14 #去除字符串左右两边的空格与回车,去掉之后本身还是一个字符串 s = qwer12 345 @#$%^。注:中间不能去除
    15 s4 = s.strip()
    16 #去掉右边的空格与回车去掉之后本身还是一个字符串
    17 s5 = s.rstrip()
    18 #去掉左边的的空格与回车去掉之后本身还是一个字符串
    19 s6 = s.lstrip()
    20 print(s4)
    21 
    22 #是否是系列,返回Ture或False
    23 s7 = s.isdigit()       #是否是数字
    24 s8 = s.isalnum()        #是否是字母或数字
    25 s9 = s.isalpha()        #是否是字母
    26 s10 = s.isupper()       #是否是大写字母
    27 s11 = s.islower()       #是否是小写字母
    28 s12 = s.isspace()       #是否是空格
    29 s13 = s.istitle()       #是否是标题格式(每个英文首字母大写)
    30 
    31 s14 = 'qwert'.capitalize()   #字符串首字母大写,s14 = Qwert
    32 s15 = s.count('i')           #统计字符串中出现某个字符的次数
    33 s16 = s.center(40,'*')       #打印输出字符,让字符串放在中间,s16 = *********** qwer12 345 @#$%^ ***********
    34 s21 = s.rjust(40,'*')       #从前向后开始计算,当字符串的长度超过size时,超过部分用替换符号替代,s21 = ********************** qwer12 345 @#$%^
    35 s22 = s.ljust(40,'*')        #从后向前开始计算,当字符串的长度超过size时,超过部分用替换符号替代,s22 =  qwer12 345 @#$%^ **********************
    36 
    37 
    38 
    39 s17 = s.endswith(' ')              #字符串以什么结尾,返回返回Ture或False
    40 s18 = s.startswith(' ')            #字符串以什么开头,返回Ture或False
    41 sw = 'name:{}'
    42 s19 = sw.format('yuanyuan')    #在字符{}中输出指定内容,,format内字符或数字填入{}内,注意对应关系
    43 #字典值传入
    44 hello = "My name is {name},I am {age} years old.I like {hobby}"
    45 print(hello.format_map({'name':'yanyan','age':19,'hobby':'music travel'}))
    46 
    47 #将列表中字符通过给出的连接拼为字符串,列表中的值需要时字符串
    48 li = ['q','w','e']
    49 s20 = '*'.join(li)
    50 print(s20)
    51 
    52 s23 = s.replace('qw','4321')  #字符替换s23 =  4321er12 345 @#$%^
    53 s24 = s.lower()    #转换为小写
    54 s25 = s.upper()     #转换为大写
    55 sd = 'hello every in my mind'
    56 s26 = sd.title()     #将每个字符串的首字母转换为首字母大写,s26 = Hello Every In My Mind
    View Code

    5.总结

    字符串的方法与使用需要平常不断的敲代码,才能更加熟练掌握,字符串在输入可以作为很多代码的判断,如需要完全输入数字时候可以使用isdigit() 这个方法,可以排除一些其他输入,增加可读性

    自学课程参照老男孩全栈视频
  • 相关阅读:
    volatile 和 mutable 关键字
    字符串第一个只出现一次的字符
    学一下HDFS,很不错(大数据技术原理及应用)
    把数组排成最小的数
    求第K大的数字
    数组中超过一半的数字
    打印字符的任意排列
    实时推荐系统架构
    带有任意指向指针的链表进行复制
    surfaceflinger中各个layer的排序
  • 原文地址:https://www.cnblogs.com/chenrongjin/p/10014056.html
Copyright © 2011-2022 走看看