python字符串的操作及方法

1、字符串

1.1 字符串的操作

# 1.字符串的拼接
strvar = "我爱" + "中国"
# 2.字符串的重复
strvar = "今天下午2点开会" * 3
# 3.字符串跨行拼接
stravr = "5月14日,宝马集团召开了100届股东大会,"
         "这是宝马股东大会历史上首次采用在线形式进行。"
# 4.字符串的索引
    #正向索引 0 1 2 3
    strvar = "我爱中国"
    #逆向索引 -4-3-2-1
# 5.字符串的切片与截取
strnum = "0123456789"
res = strnum[开始值:结束值:步长]                 # 开始值默认为0,结束值默认取到最后

  

1.2 字符串的方法

str.split()                                   # 切割成列表
# 参数是负值  ------> 全部切割
# str.split(" ",2)   从左到右,以空格切割2次
# str.rsplit(" ",2)  从右到左,以空格切割2次
​
str.join()                                    # 拼接成字符串
# "-".join(list)     将list的每一个元素通过'-'拼接起来
​
str.strip()                                   # 默认去空白
str.rstrip()                                  # 去右边的
str.lstrip()                                  # 去左边的
# str.strip("*")     去指定符号
​
str.replace()                                 # 替换
​
str.center()                                  # 居中
str.rjust()                                   # 居右
str.ljust()                                   # 居左
# str.center(100,"-")------>字符串 + 填充字符长度 = 100
​
str.capitalize()                              # 首字母大写
str.title()                                   # 每个单词首字母大写
str.upper()                                   # 所有字母变大写
str.lower()                                   # 所有字母变小写
str.swapcase()                                # 大小写互换
str.count()                                   # 元素出现次数
str.find()                                    # 元素第一次出现的索引位置,没有找到返回 -1
str.index()                                   # 元素第一次出现的索引位置,没有找到返回 报错
​
str.startswith()                              # 判断以什么开头     
str.endswith()                                # 判断以什么结尾
str.isupper()                                 # 判断大写
str.islower()                                 # 判断小写
str.isdecimal()                               # 判断纯数字

  

1.3 字符串格式化 format

1.3.1 format 传参

# 1.顺序传参
"{}爱{}".format("python","bajie")             # "python爱bajie"
​
# 2.索引传参
"{1}爱{0}".format("python","bajie")           # "bajie爱python"
​
# 3.关键字传参
"{name}年龄{age}".format(name="bajie",age=18) # "bajie年龄18"
​
# 4.容器类型(list,tuple)传参
# 不能使用逆向索引
data = "{0[0]}默默学{1[0]},然后惊艳{2[0]}!".format(["bajie","wukong","tangseng"],["python","c++","java"],["所有人","一个人"])
print(data)
​
data = "{class1[0]}默默学{class2[0]},然后惊艳{class3[0]}!".format(class1 = ["bajie","wukong","tangseng"],class2 =["python","c++","java"],class3 = ["所有人","一个人"])   #  ------>  推荐使用
print(data)
​
# 字典key不加引号
data = "{class1[n2]}默默学{class2[s3]},然后惊艳{class3[d2]}!".format(class1 = {"n1":"bajie","n2":"wukong","n3":"tangseng"},class2 ={"s1":"python","s2":"c++","s3":"java"},class3 = {"d1":"所有人","d2":"一个人"})

  

1.3.2 format 填充字符

# ^ 居中
# > 居右
# < 居左
# {:填充物 格式 数量} 字符串 + 填充字符长度 = 数量
strvar = "{:❤^10}爱{}".format("python","bajie")             # "❤❤python❤❤爱bajie"

  

1.3.3 format 进制相关

# :d   强制整型(不是整型会报错)
strvar = "{:10d}".format(123456789)            # 多了空格来补
# :f   浮点型(默认6位,四舍五入,自动强转整型)
strvar = "{:.3f}".format(1234.56789)           # 1234.568
# :s   强制字符串(不是字符串会报错)
# :,   千位分隔符(3位一隔开)
strvar = "{:,}".format(123456789.1234)         # 123,456,789.1234

  

2、list

2.1 列表的相关操作

# 1.列表的拼接
listvar = [1,2,3] + [4,5,6]
​
# 2.列表的重复
listvar = [7,8,9] * 3
​
# 3.列表的切片
    # 语法 => 列表[::]  完整格式:[开始索引:结束索引:间隔值]
    # (1)[开始索引:]  从开始索引截取到列表的最后
    # (2)[:结束索引]  从开头截取到结束索引之前(结束索引-1)
    # (3)[开始索引:结束索引]  从开始索引截取到结束索引之前(结束索引-1)
    # (4)[开始索引:结束索引:间隔值]  从开始索引截取到结束索引之前按照指定的间隔截取列表元素值
    # (5)[:]或[::]  截取所有列表
    
# 4.列表的获取
listvar = ["唐三藏","孙悟空","沙悟净","猪悟能","紫霞仙子","嫦娥妹妹"]
res = listvar[3]                             # 单值获取  ---->   "猪悟能"
res = listvar[2:]                            # 多值获取      
​
# 5.列表的修改(若有步长,切多少改多少,需对应)
listvar[2] = "沙和尚"                        # 单值修改
listvar[2:4] = "白骨精"                      # 多值修改
listvar[::2] = range(3)                     # 切多少改多少
​
# 6.列表的删除
del listvar[2]                              # 单值删除
del listvar[::2]                            # 多值删除

  

 

原文地址:https://www.cnblogs.com/zhoulangshunxinyangfan/p/13295474.html