Python——字符串

Python——字符串

一、字符串的索引和切片

1、索引:按照位置提取元素,从0开始的

name="wang"
print(name[0])
print(name[2])
print(name[3])
print(name[-1])

结果为:w n g g

注:name[-1]表示倒数第一个,索引为负,表示倒数

2、切片:从一个字符串中提取一部分内容

语法:s[start : end] 从start索引开始,到end切片,但是取不到end

name2="hellopython"
print(name2[1: 5])

结果为 ello

  • 如果start从0索引开始,可以省略start,语法为s[: end]。

  • 如果需要切片到最后end,可以省略end,语法为s[start: ]。

  • 如果需要控制切片的方向,就添加步长,步长为-1,表示从右到左,语法为s[start : end : -1]

  • 关于步长:语法为s[start : end : step]

    如下面例子,从索引1开始,到5结束,不包含5,结果为ello,但是步长为2,意味着每隔两个出现一个字符,所以最终结果为el

    name2="hellopython"
    print(name2[1 : 5 : 2])
    
二、字符串常用操作

字符串的操作一般不会对原字符串产生影响,会返回一个新的字符串

1、大小写转化 capitalize()
name3="a"
s1=name3.capitalize()
print(s1);

结果为 A

2、首字母大写 title()
name4="python hello"
s2=name4.title()
print(s2);

结果为 Python Hello

3、转化为小写 lower()
name5="PYTHON"
s3=name5.lower()
print(s3);

结果为 python

4、转化为大写 upper()
三、字符串的切割和替换
1、strip() 去掉字符串两端的空白字符,包括(空格、\t 、\n)
username="  wang  ming   "
username1=username.strip()
print(username1);

结果为wang ming

如果不加strip(), {结果为 wang ming },两端空白字符仍在

username="  wang  ming   "
print(username);
2、字符串替换 replace(old , new)
name="我叫王明"
name1=name.replace("王明","张三")
print(name)
print(name1);

结果为:

我叫王明
我叫张三

replace() 可去掉所有的空格,replace(" " , “”),在爬虫时常用

3、字符串切割 split(),切割之后的字符,存在列表(List)中
s="as_df_gh"
s2=s.split("_")   
print(s2);

用_分割s字符串,分割后变为单独是字符串,结果存在列表中

结果 : [‘as’, ‘df’, ‘gh’]

四、字符串的查找和替换
1、查找 find() ,返回查找的索引下标位置
s="asdfg"
ret=s.find("d")
print(ret);

结果为2

查找 index() ,find()和index()的区别在于,find没找到会返回-1,而index会报错 (用的不多这两个)

2、in和not in ,查找是否在,返回true 和 false

s="asdfg"
print("a" in s);
print("t" not in s);

结果为 True True

3、判断 startswith() ,判断字符是否以xxx开头,endswith() ,判断字符是否以xxx结尾

s="asdfg"
if s.startswith("a"):  # 判断是否a开头    
   print("以a开头")
else:    
   print("不是a开头");

结果为 : 以a开头

五、其他

1、字符串长度 len()

2、连接 join(),可拼接列表中的字符

下面就是用_连接的

lst=["w","e","f"]
newLst="_".join(lst)
print(newLst)

结果为: w_e_f

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值