• day02.1-字符串内置方法


    字符串——str的定义:test = "zizaijiapu"

    特点:1. 字符串是可迭代对象;

          2. 字符串中各元素是有序的;

          3. 字符串一经创建,其内容值不可修改。

    1. 查看变量数据类型

    1 a = 11
    2 b = "zazaijiapu"
    3 print(type(a),type(b))
    4 """"
    5 运行结果:<class 'int'> <class 'str'>
    6 结果分析:变量a的数据类型为int;变量b的数据类型为str
    7 """

    2. 将字符串转换为任意进制整数

    1 a = "18"
    2 b1 = int(a)
    3 b2 = int(a, base=16)
    4 print(b1, b2)
    5 """
    6 运行结果:18 24
    7 结果分析:其中base形参用于指定转换后整数的进制数,默认为十进制
    8 """

    3. 获取字符串中指定索引位置处的元素值

    1 test = "zizaijiapu"
    2 v1 = test[3]
    3 v2 = test[0:4]
    4 print(v1,v2)
    5 """
    6 运行结果:a ziza
    7 结果分析:
        将源字符串中索引位置index=3处的字符元素赋值给变量v1
    8 将源字符串中索引位置index位于[0,4)之间的子串赋值给变量v2 9 """

    4. 依次顺序查看字符串中的各字符元素

    1 test = "wo"
    2 for item in test:
    3     print(item)
    4 """
    5 运行结果:
    6     w
    7     o
    8 结果分析:按照字符串的索引顺序依次输出各字符元素        
    9 """

    5. 统计字符串中字符元素个数

    1 test = "zizaijiapu"
    2 print(len(test))
    3 """
    4 运行结果:10
    5 结果分析:源字符串由10个字符元素构成        
    6 """

    6. 统计子串在字符串中出现的次数

    1 test = "alexalex"
    2 print(test.count("le"))
    3 """
    4 运行结果:2
    5 结果分析:子串"le"在源字符串中共出现了2次        
    6 """

    7. 查看字符串中子串开始出现的索引位置

     1 test = "zizaizaijiapu"
     2 print(test.find("ai"))
     3 print(test.find("ai",4,8))
     4 """
     5 运行结果:
     6         3
     7         6
     8 结果分析:
     9         在不指定源字符串查找索引index范围的情况下,默认返回子串"ai"首次出现的索引位置;
    10         指定源字符串查找索引index范围[4,8)时,返回子串"ai"在该范围内首次出现的索引位置      
    11 """

    8. 调整字符串中首字母为大写形式

    1 test = "zizai jiapu"
    2 print(test.capitalize())
    3 """
    4 运行结果:Zizai jiapu
    5 结果分析:将源字符串中的首字母"z"调整为大写形式,其他字母大小写形式不变      
    6 """

    9. 调整字符串中所有小写字母为大写形式

    1 test = "ZiZaiJiaPu"
    2 print(test.upper())
    3 """
    4 运行结果:ZIZAIJIAPU
    5 结果分析:将源字符串中所有的小写字母转换为大写形式      
    6 """

    10. 调整字符串中所有大写字母为小写形式

    1 test = "ZiZaiJiaPu"
    2 print(test.casefold())
    3 print(test.lower())
    4 """
    5 运行结果:
    6     zizaijiapu
    7     zizaijiapu
    8 结果分析:将源字符串中所有的大写字母转换为小写形式;两者所不同的是,前者还可以完成其他语言中字母的大小写形式转换     
    9 """

    11. 实现字符串中大小写字母的相互转换

    1 test = "ZiZaiJiaPu"
    2 print(test.swapcase())
    3 """
    4 运行结果:zIzAIjIApU
    5 结果分析:将源字符串中所有大写字母转换为小写形式,同时将所有小写字母转换为大写形式   
    6 """

    12. 将字符串转换为标题型书写格式

    1 test = "zi zai jia pu"
    2 print(test.title())
    3 """
    4 运行结果:Zi Zai Jia Pu
    5 结果分析:将源字符串中每个单词的首字母转换为大写形式   
    6 """

    13. 在字符串各字符间插入指定形式的分隔符

    1 test = "zizaijiapu"
    2 v = "_".join(test)
    3 print(v)
    4 """
    5 运行结果:z_i_z_a_i_j_i_a_p_u
    6 结果分析:在源字符串中每个字符间插入分隔符"_"  
    7 """

    14. 在各字符串间插入指定分隔符后打印输出(该语句不能赋予其他变量) 

    1 print("root","X","0","0", sep=":")
    2 """
    3 运行结果:root:X:0:0
    4 结果分析:在源字符串间插入分隔符":"后输出。特别说明,该语句只用于输出显示,无法赋值予其他变量
    5 """

    15. 将字符串中各占位符替换为指定字符

    1 test = "my name is {name},i am {age} years old"
    2 v = test.format(name="alex",age=18)
    3 print(v)
    4 """
    5 运行结果:my name is alex,i am 18 years old
    6 结果分析:将源字符串中的占位符{name}、{age}分别替换为alex、18  
    7 """

    16. %字符串的替换与拼接

    1 test = "i am %s, my hobby is %s, class is %d, ranking is %.3f%%" %("ljp","coding",18,1.04536829)
    2 print(test)
    3 """
    4 运行结果:i am ljp, my hobby is coding, class is 18, ranking is 1.045%
    5 结果分析:将"%s"分别替换为"ljp""coding",将"%d"替换为18,将"%.3f"替换为1.04536829并保留3位小数,"%%"表示打印显示百分号,源字符串中其他字符保持不变
    6 """

    17. 字符串中各字符之间的管道定义与替换

    1 test = "zizaijiapu"
    2 m = str.maketrans("zi","12")
    3 test_new = test.translate(m)
    4 print(test_new)
    5 """
    6 运行结果:121a2j2apu
    7 结果分析:将源字符串中字符"z"、"i"全部替换为"1"、"2"
    8 """

    18. 字符串中子串之间的一一对应替换

    1 test = "alexalex"
    2 v = test.replace("ex","bbb",2)
    3 print(v)
    4 """
    5 运行结果:albbbalbbb
    6 结果分析:在源字符串中,将前2个子串"ex"替换为"bbb",其他字符保持不变
    7 """

    19. 按照指定变化步长创建连续“数字型”字符

     1 test = range(3)
     2 for item in test:
     3     print(item)
     4 """
     5 运行结果:
     6     0
     7     1
     8     2
     9 结果分析:在创建连续字符时,默认起始字符为"0",默认变化步长为1
    10 """
     1 test = range(8,2,-2)
     2 for item in test:
     3     print(item)
     4 """
     5 运行结果:
     6     8
     7     6
     8     4
     9 结果分析:以"8"为起始字符,以"2"为终止字符,以"-2"为变化步长,创建连续字符
    10 """

    20. 去除字符串中左边空格

     1 test = " zizaijiapu "
     2 v1 = test.lstrip()     #去除字符串中左边空格
     3 v2 = test.rstrip()     #去除字符串中右边空格
     4 v3 = test.strip()      #去除字符串中左右两边空格
     5 print(v1)
     6 print(v2)
     7 print(v3)
     8 """
     9 运行结果:
    10     zizaijiapu
    11      zizaijiapu
    12     zizaijiapu
    13 结果分析:去除源字符串中对应位置的空格
    14 """

            注:还可以使用该功能去除字符串中对应位置的指定字符,分别为:test.lstrip("x")、test.rstrip("x")、test.strip("x")

    21. 增加字符串长度,并用指定字符填充空白位置

     1 test = "zizaijiapu "
     2 v1 = test.ljust(20,"*")       #源字符串左对齐,"*"填充空白位置
     3 v2 = test.rjust(20,"*")       #源字符串右对齐,"*"填充空白位置
     4 v3 = test.center(20,"*")      #源字符串居中,"*"填充空白位置
     5 print(v1)
     6 print(v2)
     7 print(v3)
     8 """
     9 运行结果:
    10     zizaijiapu *********
    11     *********zizaijiapu 
    12     ****zizaijiapu *****
    13 结果分析:按照不同对齐方式将源字符串移动到相应位置,长度增加后的空白位置用字符"*"填充
    14 """

    22. 将字符串按照指定字符个数的方式拆分

    1 test = "zi	zai
    jia	pu "
    2 v = test.expandtabs(10)
    3 print(v)
    4 """
    5 运行结果:
    6     zi        zai
    7     jia       pu 
    8 结果分析:将源字符串按照每10个字符为一个单元进行分割,当遇到制表符或换行符且字符个数不够时,用空格填充显示
    9 """

    23. 以指定字符为基准,将字符串分割成3段

     1 test = "zizaijiapu"
     2 v1,v2,v3 = test.partition("a")       #以左起第一个指定字符为基准,将源字符串分割成3段
     3 print(v1,v2,v3)
     4 v1,v2,v3 = test.rpartition("a")       #以右起第一个指定字符为基准,将源字符串分割成3段
     5 print(v1,v2,v3)
     6 """
     7 运行结果:
     8     ziz a ijiapu 
     9     zizaiji a pu 
    10 结果分析:前者以左边第一个"a"进行源字符串的分割,后者以右边第一个"a"进行源字符串的分割
    11 """

    24. 以指定字符为基准将字符串分割成若干段,并删除指定字符

     1 test = "zizaijiapuduguqiubaifengaqingyang"
     2 v1 = test.split("a",4)       #左起遍历字符串,以指定字符"a"为基准,将源字符串分割成4段
     3 v2 = test.rsplit("a",4)       #右起遍历字符串,以指定字符"a"为基准,将源字符串分割成4段
     4 print(v1)
     5 print(v2)
     6 """
     7 运行结果:
     8     ['ziz', 'iji', 'puduguqiub', 'ifeng', 'qingyang']
     9     ['zizaiji', 'puduguqiub', 'ifeng', 'qingy', 'ng'] 
    10 结果分析:
    11     前者左起遍历字符串,每遇到字符"a"便将源字符串进行拆分,并删除"a";
    12     后者右起遍历字符串,每遇到字符"a"便将源字符串进行拆分,并删除"a";   
    13 """

    25. 根据换行符分割字符串

     1 test = "zizai
    jiapu"
     2 v1 = test.splitlines(True)
     3 v2 = test.splitlines(False)
     4 print(v1)
     5 print(v2)
     6 """
     7 运行结果:
     8     ['zizai
    ', 'jiapu']
     9     ['zizai', 'jiapu']
    10 结果分析:以换行符为参考分割源字符串。当传入参数为"True"时,保留换行符;当传入参数为"False"时,删除换行符 
    11 """

    26. 判断字符串中字符是否全为数字类型

     1 test1 = "1122二②33"
     2 test2 = "1122②33"
     3 test3 = "112233"
     4 print(test1.isnumeric())
     5 print(test2.isdigit())
     6 print(test3.isdecimal())
     7 """
     8 运行结果:
     9     True
    10     True
    11     True
    12 结果分析:当源字符串中字符全部为数字类型时,返回True,否则返回False。三条语句所不同的是对于字符"数字类型"的定义范围不同 
    13 """

        判断字符串中字符是否全为字母类型

    1 test = "AaBbCc"
    2 print(test.isalpha())
    3 """
    4 运行结果:True
    5 结果分析:当源字符串中字符全部为字母类型时,返回True,否则返回False。
    6 """

        判断字符串中字符是否全为数字或字母类型

    1 test = "1一①Aa2二②Bb三3③Cc"
    2 print(test.isalnum())
    3 """
    4 运行结果:True
    5 结果分析:当源字符串中字符全部为数字或字母类型时,返回True,否则返回False。
    6 """

    27. 判断字符串中字符是否全为小写字母

    1 test = "zizaijiapu"
    2 print(test.islower())
    3 """
    4 运行结果:True
    5 结果分析:当源字符串中字符全部为小写字母时,返回True,否则返回False。
    6 """

       判断字符串中字符是否全为大写字母

    1 test = "ZIZAIJIAPU"
    2 print(test.isupper())
    3 """
    4 运行结果:True
    5 结果分析:当源字符串中字符全部为大写字母时,返回True,否则返回False。
    6 """

    28. 判断字符串是否以指定的子串内容开始

    1 test = "zizaijiapu"
    2 print(test.startswith("zi"))       #判断源字符串是否以"zi"开始
    3 print(test.startswith("ai",3,7))      #判断源字符串中索引index位置位于[3,7)之间的子串是否以"ai"开始
    4 """
    5 运行结果:
    6     True
    7     True
    8 结果分析:当源字符串中对应位置范围内的子串以指定内容的子串开始时,返回True,否则返回False。
    9 """

       判断字符串是否以指定的子串内容结束

    1 test = "zizaijiapu"
    2 print(test.endswith("pu"))       #判断源字符串是否以"zpu结束
    3 print(test.endswith("ji",3,7))      #判断源字符串中索引index位置位于[3,7)之间的子串是否以"ji"结束
    4 """
    5 运行结果:
    6     True
    7     True
    8 结果分析:当源字符串中对应位置范围内的子串以指定内容的子串结束时,返回True,否则返回False。
    9 """

    29. 判断字符串是否满足标识符命名规则

    1 test = "zi_11_zai_22"
    2 print(test.isidentifier())
    3 """
    4 运行结果:True
    5 结果分析:当源字符串满足标识符命名规则(即由数字、字母和下划线组成,并且以字母或下划线开始)时,返回True,否则返回False。
    6 """

    30. 判断字符串是否满足标题书写格式

    1 test = "Zi Zai Jia Pu"
    2 print(test.istitle())
    3 """
    4 运行结果:True
    5 结果分析:当源字符串满足标题书写格式(即字符串中每个单词首字母大写)时,返回True,否则返回False。
    6 """
  • 相关阅读:
    loadrunner 字符集与检查点的探讨
    oracle使用游标进行循环数据插入
    QTP之WinMenu对象的测试
    VBS数组深入浅出
    Loadrunner 如何访问数据库
    loadrunner字符串处理函数
    动态SQL现实一个表中求多列的和
    oracle中WMSYS.WM_CONCAT函数的版本差异
    强制卸载LINUX系统自带JDK
    loadrunner调用QTP脚本来实现性能测试(一次现场特殊需求的解决方案)
  • 原文地址:https://www.cnblogs.com/zizaijiapu/p/9991163.html
Copyright © 2020-2023  润新知