zoukankan      html  css  js  c++  java
  • 字符串-str

    字符串是 Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串。

    1. 字符串运算符

    a = 'abc'
    b = '123'
    
    print(a + b)      # + 可以让字符串拼接,输出: abc123
    print(a * 3)      # * 可以让字符串重复,输出: abcabcabc
    print('b' in a)   # 成员运算符 - 如果字符串中包含给定的字符返回 True
    print(a[2])       # 通过索引获取字符串中字符
    

    2. 字符串格式化符号 

    %c  # 格式化字符及其ASCII码
    %s  # 格式化字符串
    %d  # 格式化整数
    %u  # 格式化无符号整型
    %o  # 格式化无符号八进制数
    %x  # 格式化无符号十六进制数
    %X  # 格式化无符号十六进制数(大写)
    %f  # 格式化浮点数字,可指定小数点后的精度
    %e  # 用科学计数法格式化浮点数
    %E  # 作用同%e,用科学计数法格式化浮点数
    %g  # %f和%e的简写
    %G  # %F 和 %E 的简写
    %p  # 用十六进制数格式化变量的地址
    

    3. 字符串内建函数 

    string.capitalize()    # 把字符串的第一个字符大写
    string.center(width)   # 返回一个原字符串居中,并使用空格填充至长度 width 的新字符串
    string.count(str, beg=0, end=len(string))   # 返回 str 在 string 里面出现的次数,如果 beg 或者 end 指定则返回指定范围内 str 出现的次数
    string.decode(encoding='UTF-8', errors='strict')  # 以 encoding 指定的编码格式解码 string,如果出错默认报一个 ValueError 的异常,除非 errors 指定的是 'ignore' 或者 'replace'
    string.encode(encoding='UTF-8', errors='strict')  # 以 encoding 指定的编码格式编码 string,如果出错默认报一个 ValueError 的异常,除非 errors 指定的是 'ignore' 或者 'replace'
    string.endswith(obj, beg=0, end=len(string))      # 检查字符串是否以 obj 结束,如果 beg 或者 end 指定则检查指定的范围内是否以 obj 结束,如果是,返回 True,否则返回 False.
    string.find(str, beg=0, end=len(string))          # 检测 str 是否包含在 string 中,如果 beg 和 end 指定范围,则检查是否包含在指定范围内,如果是返回开始的索引值,否则返回-1
    string.format()        # 格式化字符串
    string.index(str, beg=0, end=len(string))   # 跟find()方法一样,只不过如果str不在 string中会报一个异常.
    string.isalnum()       # 如果 string 至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False
    string.isalpha()       # 如果 string 至少有一个字符并且所有字符都是字母则返回 True,否则返回 False
    string.isdigit()       # 如果 string 只包含数字则返回 True 否则返回 False.
    string.islower()       # 如果 string 中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False
    string.isnumeric()     # 如果 string 中只包含数字字符,则返回 True,否则返回 False
    string.isspace()       # 如果 string 中只包含空格,则返回 True,否则返回 False.
    string.isupper()       # 如果 string 中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,则返回 True,否则返回 False
    string.join(seq)       # 以 string 作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串
    string.lower()         # 转换 string 中所有大写字符为小写.
    string.lstrip()        # 去掉 string 左边的空格
    max(str)               # 返回字符串 str 中最大的字母。
    min(str)               # 返回字符串 str 中最小的字母。
    string.partition(str)  # 有点像 find() 和 split() 的结合体,从 str 出现的第一个位置起,把字符串 string 分成一个3元素的元组 (string_pre_str,str,string_post_str),如果 string 中不包含 str 则 string_pre_str == string.
    string.replace(str1, str2, num=string.count(str1))   # 把 string 中的 str1 替换成 str2,如果 num 指定,则替换不超过 num 次.
    string.rfind(str, beg=0, end=len(string))   # 类似于 find()函数,不过是从右边开始查找.
    string.rindex(str, beg=0, end=len(string))  # 类似于 index(),不过是从右边开始.
    string.ljust(width)    # 返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串
    string.rjust(width)    # 返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串
    string.rpartition(str) # 类似于 partition()函数,不过是从右边开始查找
    string.rstrip()        # 删除 string 字符串末尾的空格.
    string.split(str="", num=string.count(str))     # 以 str 为分隔符切片 string,如果 num 有指定值,则仅分隔 num+ 个子字符串
    string.startswith(obj, beg=0, end=len(string))  # 检查字符串是否是以 obj 开头,是则返回 True,否则返回 False。如果 beg 和 end 指定值,则在指定范围内检查.
    string.strip([obj])    # 在 string 上执行 lstrip()和 rstrip()
    string.swapcase()      # 翻转 string 中的大小写
    string.upper()         # 转换 string 中的小写字母为大写
    string.zfill(width)    # 返回长度为 width 的字符串,原字符串 string 右对齐,前面填充0
    

       1)检查字符串开头或结尾的一个简单方法是使用 str.startswith() 或者是 str.endswith() 方法。如果你想检查多种匹配可能,只需要将所有的

          匹配项放入到一个元组中去,然后传给 startswith() 或者 endswith() 方法:

    filenames = [ 'Makefile', 'foo.c', 'bar.py', 'spam.c', 'spam.h' ]
    new = [ name for name in filenames if name.endswith(('.c', '.h')) ]  # 以.c 或者 .h 结尾
    print(new)   # ['foo.c', 'spam.c', 'spam.h']
    

      

  • 相关阅读:
    遗传算法的理解
    使用Grub Rescue 修复MBR
    java 虚拟机与并发处理几个问题简要(二)
    java 虚拟机与并发处理几个问题简要(一)
    Fence Repair POJ
    Best Cow Line---POJ 3617(贪心)
    迷宫的最短路径
    最大子段和
    Lake Counting --POJ 2386
    Ants POJ
  • 原文地址:https://www.cnblogs.com/yanghh/p/13228553.html
Copyright © 2011-2022 走看看