前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python基础之str常用方法、for循环

Python基础之str常用方法、for循环

作者头像
孙晨c
发布2019-09-10 19:13:27
8160
发布2019-09-10 19:13:27
举报
文章被收录于专栏:无题~无题~

初学python,有些地方可能还不够明白,希望各位看官发现我的错误后留言指正!

一.字符串的索引与切片

  注:字符串的第一位的索引值是0

  1.索引案例

代码语言:javascript
复制
1 s = 'abcd'
2 s1 = s[0]
3 print(s1)#输出a

  2.切片案例,注:顾头不顾尾,即指定的最后一个索引的字符取不到

代码语言:javascript
复制
1 s = 'abcd' 
2 s2 = s[0:3] 
3 print(s2)
4 #输出abc,不包括下标是3的d

  3.若字符串非常长,而且要取后面的字符串,可以从最后一位(下标是-1)开始取

代码语言:javascript
复制
1 s = 'abcd'
2 s3 = s[-1]
3 print(s3)#输出d

  4.取整个字符串

代码语言:javascript
复制
1 s = 'abcd'
2  s4 = s[0:]
3  s5 = s[:] 
4 print(s4,s5)#都会输出整个字符串
5 
6  print(s[0:0])#输出一个空字符串,不会报错

  5.步长:默认步长为1,若需要间隔固定的间距取字符,则步长=间距+1 ,格式:[首下标:尾下标:步长]

代码语言:javascript
复制
1 s = 'abcde'
2 s6 = s[0:4:2]
3 print(s6)#输出ac  

  6.逆序

代码语言:javascript
复制
1 s = 'abcde'
2 s7 =s[-1::-1]
3 #或者s7 =s[::-1]
4 print(s7)#输出edcba

  7.指定某个下标开始逆序

代码语言:javascript
复制
1 s = 'abcde'
2 s8 =s[3::-1]
3 print(s8)#输出dcba

二、大写、小写转换

  1.首字母大写

代码语言:javascript
复制
1 s='abcd'
2 s1 = s.capitalize()#首字母大写

  2.首字母大写:用空格隔开或者其他特殊字符、数字隔开也可以

代码语言:javascript
复制
1 s = 'sun ton-alex*egon'
2 s1=s.title()#将s和t转换成大写
3 print(s1)#输出Sun Ton-Alex*Egon

  3.全部转大写、小写

代码语言:javascript
复制
1 s='abcd'
2 s2 = s.upper()#转换大写
3 s3 = s.lower()#转换小写

其用处体现在:输入验证码时,不区分大小写

  4.大小写翻转

代码语言:javascript
复制
1 s='AbCd'
2 s.swapcase()#小写转大写、大写转小写

三.字符串居中、空白填充

代码语言:javascript
复制
1 s='AAA'
2 s1 = s.center(20)#总长度为20,将字符串居中
3 s2 = s.center(20,'*')#居中,并且两边的用'*'填充

四.\t补位

代码语言:javascript
复制
s='ab\tcd'
s1 = s.expandtabs()
print(s1)
#输出ab      cd,中间有六个空格,总共八位,\t前面的ab占两位,所以补六位,大于8位的
#补16位

五.公共方法-字符串长度,列表长度、字典长度……

代码语言:javascript
复制
1 s = 'abcd我'
2 print(len(s))#输出5,中文也算一个字符 

六.判断以单个字符或多个字符开头、结尾

代码语言:javascript
复制
1 s = 'abcd'
2 s1 = s.startswith('a')
3 s2 = s.startswith('ab')
4 s3 = s.startswith('abc')
5 print(s1,s2,s3)#都返回True
6 
7 #判断结尾的字符:同理,只是写法变了
8 s = 'abcd'
9 s1 = s.endswith()

  1.将字符串切片后,判断是否以某字符开头:

代码语言:javascript
复制
1 s = 'abcd'
2 s1 = s.startswith('b',1,3)#判断切片后的'bc'是否以字符'b'开头

七.找出字符串里是否有某个字符或连续的字符串,若找到则返回其第一个字符的索引(下标),找不到则返回-1

代码语言:javascript
复制
1 s = 'abcd'
2 s1 = s.find('c')
3 print(s1)#输出2

利用for循环找到字符串里所有指定字符的下标

代码语言:javascript
复制
1 s = 'abcdacd'
2 for index,i in  enumerate(s):
3    if i=='a':
4        print('{}的下标:{}'.format(i,index))
5 #输出:
6 #a的下标:0
7 #a的下标:4

还有一个方法index,它和find作用类似,通过元素找索引,不同点是:找不到指定的字符则会报错!

八.默认删除字符串前后的空格

代码语言:javascript
复制
1 s = '  abcd  '
2 s1 = s.strip()
3 print(s1)#输出abcd

  1.也可以指定删除的字符或者特殊字符,空格也可以指定,注:字符之间的空格、指定字符不能删除

代码语言:javascript
复制
1 s = 'abcd***'
2 s1 = s.strip('*')
3 print(s1)#输出abcd
4 
5 #也可以指定多个字符或特殊字符
6 s = ' %%abcd***'
7 s1 = s.strip(' %*')#指定字符的顺序无关
8 print(s1)#输出abcd

  2.因为strip()方法能删除字符串两边的指定字符,所以可以指定只删除字符串左边或右边的字符

代码语言:javascript
复制
#删左边,不动右边
lstrip()
#删右边,不动左边
rstrip()

九.统计指定字符的个数

代码语言:javascript
复制
1 s = 'abbcd'
2 s1 = s.count('a')
3 s2 = s.count('bb')
4 print(s1,s2)#都输出1

十.分割成列表(字符串转换成列表),默认以空格为分隔符进行分割,当然也可以指定字符为分隔符

代码语言:javascript
复制
1 s = 'a b c d' 
2 s1 = s.split()
3 print(s1)#输出['a','b','c','d'] 
4 
5 #注:若分隔符前面没有字符,也会分割成一个空的字符 
6 s = ';a;b;c;d' 
7 s2 = s.split(';')
8 print(s2)#输出['','a','b','c','d']

十一.格式化输出

  第一种:

代码语言:javascript
复制
1 s = '我叫{},今年{}'.format('sun','19')#数字可以不用引号引起来
2 print(s)

  第二种:利用索引(下标),format里的字符用逗号隔开,下标从0开始

代码语言:javascript
复制
s = '我叫{0},今年{1}'.format('sun','19')#'sun'的下标是0,'19'的下标是1

  第三种:键值对的形式,在format里的字符可以不用按输出的顺序排列

代码语言:javascript
复制
1 s = '我叫{name},今年{age}'.format(age=19,name='sun')

十二.替换

代码语言:javascript
复制
1 s = 'abacda'
2 s1 = s.replace('a','A')#将所有的a替换成A
3 
4 #也可以指定次数
5 s1 = s.replace('a','A',1)#只把第一个a替换成A

十三.判断字符串组成内容

代码语言:javascript
复制
 1 #判断字符串是否只由数字组成
 2 s = '123'
 3 print(s.isnum())
 4 
 5 #判断字符串是否只由字母组成
 6 s1 = 'abc'
 7 print(s.isalpha())
 8 
 9 #判断字符串是否由数字或字母组成
10 s2 = '123abc'
11 print(s.isalnum())

十四.for循环(有限循环):in后面的能迭代的就能循环

代码语言:javascript
复制
1 s = 'abcd'
2 for i in s:
3     print(i)
4 #输出:
5 a 
6 b 
7 c
8 d

 while循环可以是无限循环(while 1),加上控制条件

代码语言:javascript
复制
1 s = 'abcdacd'
2 i=0
3 while i<len(s):
4    print(s[i])  #输出字符串里的每个字符
5    i += 1

 in的其他用法:判断字符串里是否存在某些字符,当然了,有in那么就有not in

代码语言:javascript
复制
1 s = 'azxczcx政治'
2 if '政治' in s:
3     print('含有敏感词')
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-07-22 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一.字符串的索引与切片
    •   1.索引案例
      •   2.切片案例,注:顾头不顾尾,即指定的最后一个索引的字符取不到
        •   3.若字符串非常长,而且要取后面的字符串,可以从最后一位(下标是-1)开始取
          •   4.取整个字符串
            •   5.步长:默认步长为1,若需要间隔固定的间距取字符,则步长=间距+1 ,格式:[首下标:尾下标:步长]
              •   6.逆序
                •   7.指定某个下标开始逆序
                • 二、大写、小写转换
                  •   1.首字母大写
                    •   2.首字母大写:用空格隔开或者其他特殊字符、数字隔开也可以
                      •   3.全部转大写、小写
                        •   4.大小写翻转
                        • 三.字符串居中、空白填充
                        • 四.\t补位
                        • 五.公共方法-字符串长度,列表长度、字典长度……
                        • 六.判断以单个字符或多个字符开头、结尾
                          •   1.将字符串切片后,判断是否以某字符开头:
                          • 七.找出字符串里是否有某个字符或连续的字符串,若找到则返回其第一个字符的索引(下标),找不到则返回-1
                          • 八.默认删除字符串前后的空格
                            •   1.也可以指定删除的字符或者特殊字符,空格也可以指定,注:字符之间的空格、指定字符不能删除
                              •   2.因为strip()方法能删除字符串两边的指定字符,所以可以指定只删除字符串左边或右边的字符
                              • 九.统计指定字符的个数
                              • 十.分割成列表(字符串转换成列表),默认以空格为分隔符进行分割,当然也可以指定字符为分隔符
                              • 十一.格式化输出
                                •   第一种:
                                  •   第二种:利用索引(下标),format里的字符用逗号隔开,下标从0开始
                                    •   第三种:键值对的形式,在format里的字符可以不用按输出的顺序排列
                                    • 十二.替换
                                    • 十三.判断字符串组成内容
                                    • 十四.for循环(有限循环):in后面的能迭代的就能循环
                                      •  while循环可以是无限循环(while 1),加上控制条件
                                        •  in的其他用法:判断字符串里是否存在某些字符,当然了,有in那么就有not in
                                        相关产品与服务
                                        验证码
                                        腾讯云新一代行为验证码(Captcha),基于十道安全栅栏, 为网页、App、小程序开发者打造立体、全面的人机验证。最大程度保护注册登录、活动秒杀、点赞发帖、数据保护等各大场景下业务安全的同时,提供更精细化的用户体验。
                                        领券
                                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档