zoukankan      html  css  js  c++  java
  • string内建函数

      1 # 内建函数
      2 # 1、eval(str) : 把str转成可执行的代码
      3 print(eval("123"))
      4 str1 = eval("123")
      5 print(type(str1)) # int
      6 print(eval("1 + 2")) # 3
      7 print(eval("-1234")) # -1234
      8 print(eval("+567")) # 567
      9 # print(eval("123abc")) # SyntaxError: unexpected EOF while parsing
     10 
     11 # 2、len(str) 返回字符串的长度 ****
     12 str2 = "123456789"
     13 print(len(str2)) # 9
     14 
     15 # 3、字母大小写转换 不会影响原始字符串,会返回一个新的字符串 ***
     16 str3 = "hoW aRe You?I'm fAIn. ThAnk yOU."
     17 print(str3)
     18 # 3.1、lower() 将所有字母转成小写
     19 str4 = str3.lower()
     20 print(str4)
     21 print(str3)
     22 # 3.2、upper() 将所有字母转成大写
     23 print(str3.upper())
     24 # 3.3、swapcase() 将大写转为小写,将小写转为大写
     25 print(str3.swapcase())
     26 # 3.4、title() 每个单词的首字母大写
     27 print(str3.title())
     28 # 3.5、capitalize() 每个段落的首字母大写
     29 print(str3.capitalize())
     30 
     31 # 4、str.count(subStr [,begin, end]) 返回str中subStr出现的次数
     32 # 如果指定begin与end的值,根据给定的范围获取次数
     33 str4 = "ni hao bye ni bye ya o hei ni hao"
     34 print(str4.count("ni")) # 3
     35 print(str4.count("ni", 3, 32))
     36 
     37 # 5、检测一个字符串中有没有另一个字符串
     38 # in not in
     39 str5 = "abcdefghidejk"
     40 # 5.1、str.find(subStr [,begin, end]) 检测str中有没有subStr,
     41 # 如果有,返回第一次找到的下标;如果没有,返回-1
     42 # 从左向右查
     43 print(str5.find("de")) # 3
     44 print(str5.find("qw")) # -1
     45 print(str5.find("de", 4, 13)) # 9
     46 # 5.2、str.rfind(subStr [,begin, end]) 检测str中有没有subStr,
     47 # 如果有,返回第一次找到的下标;如果没有,返回-1
     48 # 从右向左查
     49 print(str5.rfind("de")) # 9
     50 # 5.3、str.index(subStr [,begin, end]) 检测str中有没有subStr,
     51 # 如果有,返回第一次找到的下标;如果没有,返回错误 ValueError: substring not found
     52 # 从左向右查
     53 print(str5.index("de")) # 3
     54 # print(str5.index("qw")) # 返回错误
     55 print(str5.index("de", 4, 13)) # 9
     56 # 5.4、str.rindex(subStr [,begin, end]) 检测str中有没有subStr,
     57 # 如果有,返回第一次找到的下标;如果没有,返回错误 ValueError: substring not found
     58 # 从右向左查
     59 print(str5.rindex("de")) # 9
     60 
     61 
     62 # 6、返回一个指定长度的字符串
     63 # 6.1、str.center(len [,fillChar]) 返回一个长度为len的字符串,str在
     64 # 中间位置,其他位置用fillChar补齐,默认为空格
     65 str6 = "pyc"
     66 print(str6.center(12))
     67 print(str6.center(12, "*"))
     68 # 6.2、str.ljust(len [,fillChar]) 返回一个长度为len的字符串,str在
     69 # 左边,其他位置用fillChar补齐,默认为空格
     70 print(str6.ljust(12))
     71 print(str6.ljust(12, "&"))
     72 # 6.3、str.rjust(len [,fillChar]) 返回一个长度为len的字符串,str在
     73 # 右边,其他位置用fillChar补齐,默认为空格
     74 print(str6.rjust(12))
     75 print(str6.rjust(12, "#"))
     76 # 6.4、str.zfill(len) 返回一个长度为len的字符串,str在
     77 # 右边,其他位置用数字0补齐
     78 print(str6.zfill(12))
     79 
     80 # 7、截掉指定字符
     81 str7 = " str "
     82 str8 = "******wyc******"
     83 # 7.1、str.strip(subStr) 将str左右两边的subStr截掉,如果不给
     84 # 定subStr,默认为空格
     85 print(str7.strip())
     86 print(str8.strip("*"))
     87 # 7.2、str.lstrip(subStr) 将str左边的subStr截掉,如果不给
     88 # 定subStr,默认为空格
     89 print(str7.lstrip())
     90 print(str8.lstrip("*"))
     91 # 7.3、str.rstrip(subStr) 将str右边的subStr截掉,如果不给
     92 # 定subStr,默认为空格
     93 print(str7.rstrip())
     94 print(str8.rstrip("*"))
     95 
     96 
     97 # 8、切割字符串,返回一个列表类型的数据
     98 # 8.1、str.split(subStr [,num]) 以subStr切割str字符串,如果num无值,默认
     99 # 全切,如果num有值,切割次数的最大值为num次
    100 # 返回一个列表,将切割好的字符串放到列表中
    101 str9 = "pyc*is*a*good*girl"
    102 print(str9.split("*"))
    103 print(str9.split("*", 2))
    104 # 8.2、str.splitlines([bool]) 以行(
     
     
    
    )切割str字符串,
    105 # 返回一个列表,将切割好的字符串放到列表中
    106 # 当bool为False时,不保留换行符,默认值;当bool为True时,保留换行符
    107 print('---------------------')
    108 str11 = "abc
    def
    oop
    duoheshui
    he"
    109 print(str11.splitlines())
    110 print(str11.splitlines(False))
    111 print(str11.splitlines(True))
    112 str12 = """abc
    113 def
    114 ghi
    115 jk"""
    116 print(str12)
    117 print(str12.splitlines())
    118 
    119  
    120 
    121 
    122 # 9、拼接字符串
    123 # str.join(iter) : 将iter中的元素使用str拼接为一个字符串
    124 list1 = ["123", "abc", "def", "456"]
    125 print("*".join(list1))
    126 
    127 # 10、字符与ASCII之间的转换
    128 # 10.1、ord() 将某个字符转为ASCII
    129 str10 = "A"
    130 print(ord(str10)) # 65
    131 # 10.2、chr() 将ASCII转为字符
    132 print(chr(66))
    133 
    134 print(ord("")) # 28504
    135 print(chr(23102)) #
    136 
    137 # 11、返回字符串中的最大值或最小值,比较ASCII的值
    138 str13 = "qAfSCkZzw"
    139 print(max(str13)) # z
    140 print(min(str13)) # A
    141 
    142 # 12、替换字符串, 返回一个新的字符串
    143 str14 = "ni hao good well ni hao bye ni hao ni"
    144 # 12.1、str.replace(oldStr, newStr [, num]) 将str中的oldStr旧字符串
    145 # 替换为newStr新字符串
    146 # 如果num无值,默认全部替换;如果num有值,最多替换num次
    147 print(str14)
    148 print(str14.replace("hao", "buhao"))
    149 print(str14.replace("hao", "huai" , 2))
    150 
    151 # 12.2、str.maketrans() 创建一个映射表,并将该映射表返回
    152 # 当maketrans有两个字符串类型的参数时,要求这两个字符串的长度一致,
    153 # 如果长度不一致,会报错
    154 # 当maketrans只写一个字参数时,要求这参数为字典类型的数据
    155 t1 = str.maketrans("abcd", "1234")
    156 # ValueError: the first two maketrans arguments must have equal length
    157 print(t1)
    158 t2 = str.maketrans({"q": "9", "w": "8"})
    159 print(t2)
    160 # str.translate(t) 根据t(上面的方式创建的映射表)替换str中对应的字符
    161 str15 = "abcdefgqwwqabc"
    162 print(str15.translate(t1))
    163 print(str15.translate(t2))
    164 
    165 # 13、用于判断的函数
    166 # isalpha() 字符串中至少有一个字符,并且所有字符都是字母,
    167 # 返回True,否则返回False
    168 print("".isalpha()) # F
    169 print("1234".isalpha()) # F
    170 print("abc".isalpha()) # T
    171 # isupper() 字符串中至少有一个是区分大小写的字符,
    172 # 并且所有字符都是大写,返回True,否则返回False
    173 print(" ".isupper()) # F
    174 print("abcD".isupper()) # F
    175 print('ABC123'.isupper()) # T
    176 # islower() 字符串中至少有一个是区分大小写的字符,
    177 # 并且所有字符都是小写,返回True,否则返回False
    178 print(" ".islower()) # F
    179 print("abcD".islower()) # F
    180 print('abc123'.islower()) # T
    181 # istitle() 字符串中至少有一个是区分大小写的字符,并且所有字符都是
    182 # 标题化,返回True,否则返回False
    183 print('abc123'.istitle()) # F
    184 print('Ade Q123 Io'.istitle()) # T
    185 
    186 # isalnum() 字符串中至少有一个字符,并且所有字符都是字母或数字,
    187 # 返回True,否则返回False
    188 print(' 12345 '.isalnum()) # F
    189 print('12asdf'.isalnum()) # T
    190 
    191 # isdigit() 字符串中至少有一个字符,并且所有字符都是数字,
    192 # 返回True,否则返回False
    193 print(' 12345 '.isdigit()) # F
    194 print('12asdf'.isdigit()) # F
    195 print('12123456'.isdigit()) # T
    196 
    197 # isspace() 字符串中至少有一个字符,并且所有字符都是空格,
    198 # 返回True,否则返回False
    199 print(' '.isspace()) # T
    200 print(' 1234 '.isspace()) # F
    201 # 判断 正则
    202 
    203 # 14、string.startswith(str [, begin, end])
    204 # 判断string是否以str开头,是返回True,否则返回False ,
    205 # begin, end指定范围查找
    206 str20 = "http://www.baidu.com"
    207 print(str20.startswith("http://"))
    208 print(str20.startswith("www"))
    209 print(str20.startswith("www", 7, 15))
    210 
    211 # string.endswith(str [, begin, end])
    212 # 判断string是否以str开头,是返回True,否则返回False ,
    213 # begin, end指定范围查找
    214 print(str20.endswith(".com"))
    215 print(str20.endswith("www"))
    216 print(str20.endswith("www", 0, 10))
    217 
    218 # 15、编码解码
    219 # string.encode(encoding) 以encoding指定的格式进行编码
    220 str23 = "我是pycPYC!@#¥123"
    221 print(str23)
    222 str24 = str23.encode("GBK")
    223 print(str24)
    224 print(type(str24)) # bytes
    225 print(str23.encode("utf-8"))
    226 
    227 # string.decode(encoding) 以encoding指定的格式进行解码
    228 print(str24.decode("GBK"))
    229 
    230 # 注:解码时要求知道字节是以什么方式进行编码的,编码解码格式不一致时,
    231 # 返回错误。
  • 相关阅读:
    简单的实现了利用plist进行大图分割小图
    windows 10升级后系统盘清理
    在window下用编译lua源文件生成lua程序
    window下ip切换
    springMVC对简单对象、Set、List、Map的数据绑定和常见问题.
    MIME类型大全
    Apache poi 固定Excel 表格导入数据库方法(列名对应数据库字段名)
    java 通过Apache poi导出excel代码demo实例
    mySQL 开启事件存储过程
    Mysql 变量讲解
  • 原文地址:https://www.cnblogs.com/BKY88888888/p/11252466.html
Copyright © 2011-2022 走看看