52.基础语法-str

旧城冷巷雨未停 提交于 2020-02-22 14:44:54

字符串

  • 用单引号,双引号,三引号,括起来的部分
  • 三引号特殊一些,可以注释,可以时字符串,作为字符串时可以保留输入格式
  • 字符串内有引号时,内有单引号,外用双引号,其他类推。

转义字符

  • 不分平台都一样
  • 唯一特使的是换行符 linux: \r\n window: \n或\r\n
  • 原意表达字符串,在字符串引号前加r
print("123\r\n456\r\n789")
print(r"123")

格式化

  • 对字符串中某个位置,进行替换填充

传统格式化,用%(占位符)进行替换,所有的占位符同C语言的占位符

s_gsh1 = "钓%s"
print(s_gsh1 % "鱼")
s_gsh2 = "我的身高%.2f米,我的体重%.2f公斤。"
print(s_gsh2 % (1.76,78.0))

format函数进行格式化

a = "Hello"
b = "World"
d = {"H":"Hello", "W":"World"}
print("{} {}!".format("Hello", "World"))
print("{1} {0}!".format(b, a))
print("{H} {W}!".format(H="Hello", W="World"))
print("{H} {W}!".format(**d)) #------"**d"属于字典的解包
 
print("我身高{:.2f}米,体重{:.2f}公斤。".format(1.76, 76.0))

str内置函数

  1. 查找类函数.find,.rfind,.index,.islower
    • .find和.index
      • 都是判断一个字符串中是否包含某子串
      • 使用方法一致,只是不包含时.find返回值是-1,.index直接报错
      • 返回值为子串所在位置(位置从0开始算起)
      • 后加.20意思是从第20个字符开始查找
    print("abcdefghijklmenopqrstuvwxyz".find("wxy",20))
    print("abcdefghijklmenopqrstuvwxyz".index("wxy"))
  2. 判断函数
    • 判断类函数,一般以is开头的函数都是判断类函数
    • 判断类函数返回值为True或False
    • 字符串中是否有空格不影响结果
    • 汉字无大小写区别

    • .islower和.isupper
      • .islower函数:判断字符串是否完全由小写组成
      • .isupper函数:判断字符串是否完全有大写组成
    print("sal dkfj".islower())
    print("sdfHHH".islower())
    print("SDFKJ".isupper())
    print("SDFKJadf".isupper())
    print("士大夫立刻就".islower())
    print("士大夫立刻就".isupper())
    • .isalpha函数
      • 判断字符串是否只由字母和汉字组成,返回True,否则返回False
    print("奥斯陆扩大".isalpha())
    print("sdfgkjh奥斯陆扩大".isalpha())
    print("abcdef%¥…………".isalpha())
    print("".isalpha())
    • .isdigit,.isnumeric,.isdecimal
      • 三个数字判断函数,具体有什么区别,去查英文含义,一般不用
    print("一二三四".isdigit())
    print("一二三四".isnumeric())
    print("一二三四".isdecimal())
    • .startswith和.endswith
      • 判断是否以某字符串开始或结束。
    #区分大小写和空格
    print("abcdefghijklmenopqrstuvwxyz".startswith("abc"))
    print("abcdefghijklmenopqrstuvwxyz".endswith("xyz"))
  3. 操作类函数
    • .format格式化函数:前面有解释
    • .strip,.lstrip,.rstrip
      -移除字符串开头或结尾的指定连续相同字符,不指定默认为移除空格
    print("FFFsdkfjkF".strip("F"))
    print("FFFsdkfjkF".lstrip("F"))
    print("FFFsdkfjkF".rstrip("F"))
    print("     sdkfjk    ".strip(), end="---\n")
    • .join:字符串的拼接,可在被拼接的各个元素间加入指定字符串。
    #被拼接元素具有迭代属性
    print("-".join("abc"))
    print("".join(["ab", "cd", "ef", "gh"]))
    print("--".join(["ab", "cd", "ef", "gh"]))
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!