字符串 综合

字符串 综合
1 单引号,双引号,三引号

  • 单引号:字符串中含有双引号时
  • 双引号:字符串中含有单引号时。 “I’m fine too!”
  • 三引号:字符串中同时含有单引号和双引号时;多行显示

2 正向单索引

  • 正向单索引只获取列表中的某一个元素,,并且从左到右方向索取对应位置的元素,可以使用[index]表示;
  • 索引值index是从0开始
  • 例:
    list1 = [‘张三’,‘男’,33,‘江苏’,‘硕士’,‘已婚’,[‘身高178’,‘体重72’]]
    #取出第一个元素
    print(list1[0])
    #取出第四个元素
    print(list1[3])
    #取出最后一个元素
    print(list1[6])
    #取出“体重72”这个值
    print(list1[6][1])

3 负向单索引

  • 负向单索引是指在正向单索引的基础上添加一个负号“-”,所表达的含义是从右向左的方向获取元素,可以用[-index]表示

  • 需要注意的是,负索引index是从-1开始的

  • 例:

list1 = [‘张三’,‘男’,33,‘江苏’,‘硕士’,‘已婚’,[‘身高178’,‘体重72’]]
#取出最后一个元素
print(list1[-1])
out:
[‘身高178’,‘体重72’]

  • 例:
    根据身份证识别性别
    ID=‘124433333779356789’
    if int(ID[-2])%2==0:
    print(‘女’)
    else:
    print(‘男’)

4 有限切片

  • 切片索引指的是按照固定的步长,连续取出多个元素,可以用[start🔚step]表示。其中,start指定索引的起始位置;end指定索引的终止位置(注意,end位置的元素取不到!);step指步长,默认为1,表示逐个取出一连串的列表元素。
  • 例:

ID=‘124433198807176789’
#取出出生日期
print(ID[6:14])
price=‘15.5元/500个’
#取出价格,转为浮点型
print(float(price[0:4]))
#取出500个
print(price[6:len(price)])
#可以取到最后一个值,因为字符串的长度为10,而不是最后一个元素的索引值
print(len(price)) # price字符串的长度为10
print(price[6:-1]) # end位置的元素取不到!
print(price[6:9]) #end位置的元素取不到!
out:
19880717
15.5
500个
10
500
500
5 无限切片

  • 无限索引是指在切片过程中不限定起始元素的位置或终止元素的位置。起始和终止元素的位置都不限定,可以用[::step]表示,包含字符串所有元素。
  • 例:
    list2 = [‘江苏’,‘安徽’,‘浙江’,‘上海’,‘山东’,‘山西’,‘湖南’,‘湖北’]
    #取出前三个元素
    print(list2[:3])
    #取出最后三个元素
    print(list2[-3:])
    #取出奇数位置的元素
    print(list2[::2])
    out:
    [‘江苏’, ‘安徽’, ‘浙江’]
    [‘山西’, ‘湖南’, ‘湖北’]
    [‘江苏’, ‘浙江’, ‘山东’, ‘湖南’]

  • 6 字符串方法
  • 查询方法1
    str.index(sub, start,end) # 如果找不到子串,程序会报错,一般不建议使用。
  • 例:

list1 = “‘李四’,‘女’,27,‘黑龙江’,‘博士’,‘已婚’,[‘身高198’,‘体重92’]”
print(list1)
print(list1.index(‘黑龙江’))
print(list1.index(‘博士’,3,25))
out:
‘李四’,‘女’,27,‘黑龙江’,‘博士’,‘已婚’,[‘身高198’,‘体重92’]
13
19

  • 例:
    str1=‘How are you?’
    #查询r的位置
    print(str1.index(‘re’))
    #取出are
    print(str1[str1.index(‘a’):str1.index(‘e’)+1])
    #取出e之前的所有字符
    print(str1[:str1.index(‘e’)])
    out:
    5
    are
    How ar

  • 查询方法2
    str.find(sub, start,end) # 如果找不到子串,给出“-1”。

  • 例:
    list1 = “‘李四’,‘女’,27,‘黑龙江’,‘博士’,‘已婚’,[‘身高198’,‘体重92’]”
    print(list1)
    print(list1.find(‘女’))
    print(list1.find(‘博士’,3,5))
    out:
    ‘李四’,‘女’,27,‘黑龙江’,‘博士’,‘已婚’,[‘身高198’,‘体重92’]
    6
    -1

  • “压缩”方法
    str.lstrip() #删除字符串前空白
    str.rstrip() #删除字符串后空白
    str.strip() #删除字符串前、后空白
    str.strip(abc) #删除字符串前、后abc

  • 例:
    name1=’ 你 好 吗? ’
    print(name1)
    print(name1.strip())’
    out:
    在这里插入图片描述

  • 例:
    -list=’&&&_做得很棒,加油哦(-)’
    #去掉首尾的特殊符号
    print(list)
    print(list.strip(’&_(-)’))
    out:
    &&&_做得很棒,加油哦(-)
    做得很棒,加油哦

  • 例:
    list=‘aa做得很棒,加油哦bbc’
    #去掉首尾的特殊符号
    print(list)
    print(list.strip(‘abc’))#去掉字符串首尾的abc字符
    out:
    aa做得很棒,加油哦bbc
    做得很棒,加油哦

  • 替换方法
    str.replace(old,new) # new子串替换old子串
    按值替换;按位置替换

  • 例:

  • ID=‘12443319880717678x’
    ID1=ID.replace(“x”,“X”)
    print(ID1)
    print(ID1.replace(ID1[7:11],"****"))
    out:
    在这里插入图片描述

  • “格式化插入”方法
    str.format(values) #values,指定格式化的值

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值