字符串操作

#coding:utf-8
#/usr/bin/python
"""
2018-11-03
dinghanhua
字符串操作
""" '''字符串是字符元素组成的序列
序列可使用索引,索引:从前往后 0 1 2...,从后往前-1,-2...
'''
str ='i love python'
'''长度len(str)'''
print('length of str:', len(str))
'''索引str[index]
index从0到len()-1''' print(str[0],str[-1],str[3])
#print(str[100]) # 索引越界IndexError: string index out of range print('遍历输出每个字符:')
for index in range(0,len(str)):
print(str[index]) #0,len-1 print('反向输出: ')
#for
for index in range(1,len(str)+1):
print(str[index*-1]) #-1到-len
#while
i=-1
while i>=-len(str):
print(str[i])
i-=1
'''切片
str[头索引:尾索引:步长],
步长默认1,包含头不包含尾
切片不改变原字符串
'''
slice = str[:3] #0-2
print(str,slice)
print(str[:],str[::2],str[5:],str[2:7],str[1:-1])
print('越界取: ',str[3:100]) print(str is str[:]) #不可变类型地址相同 '''字符串翻转'''
reversestr = str[::-1]
print(reversestr)
''' 'string'.join(str) 用string将str每个字符连接起来'''
strjoin = '~'.join(str)
print(strjoin)
'''* 字符串重复输出'''
strmul = str*3
print(strmul)
print('-'*50) #分割线
'''字符替换'''
strreplace = strjoin.replace('~','--',7) #替换最多7次
print(strreplace)
'''查找字符或子串'''
index = str.find('python')
print(index) #找到了返回首个匹配字串索引
index = str.find('python',7,10) #从索引7到10之间找
print(index) #没找到返回-1 index=str.index('o')
print(index) #找到了返回首个匹配字串索引
#index=str.index('oll')
#print(index) #找不到抛出异常ValueError: substring not found
'''字符串分割'''
li = strreplace.split('--')
print(li)
li = strreplace.split() #默认空格
print(li)
'''将id参数值替换成100'''
str = 'id=2&random=35318759314'
'''找到id参数的开始索引和结束索引,切片,替换'''
begin_index = str.find('id=')
if begin_index != -1:
end_index = str.find('&',begin_index) #从id=后开始查找&
strnew = str.replace(str[begin_index : end_index],'id=100') #切片然后替换
print(strnew)
'''分割,查找替换,连接'''
li = str.split('&')
print(li)
for i in (0,len(li)):
if li[i].startswith('id='):
li[i] = 'id=100'
break
print(li)
strnew2 = '&'.join(li)
print(strnew2)
'''大小写、去空格、内容判定等'''
print(str.upper(),str.isupper(),
str.lower(),str.islower(),
str.capitalize(), str.istitle() ) print(' test '.strip(),
' test '.lstrip(),
' test '.rstrip()) str='1314432 target test tick '
print(str.isalnum(),
str.isalpha(),
str.isdigit(),
str.isspace())
print(str.count(''),
str.startswith(''),
str.endswith('f'))

练习题:

#找出第一个不重复的字符
for char in str:
if str.count(char) == 1:
print(char,str.index(char))
break #去除重复字符
strnew = ''
for char in str:
if char not in strnew:
strnew += char
print(strnew)

最新文章

  1. python简介和入门
  2. Vue数据绑定隐藏的神坑....
  3. CSS HACK tab制表符导致行内元素之间的空隙如何解决
  4. EnterpriseLibrary 6.0中DAAB独立数据库配置文件初始化
  5. [转] IE6中请求莫名中断
  6. js的设计模式
  7. A*啦啦啦
  8. RequireJs 依赖管理使用
  9. 结合Zen Coding快速编写HTML代码(sublime text2篇)
  10. 浅谈 PHP 神盾的解密过程
  11. BCM策略路由交换芯片
  12. jQuery的MP3、视频播放器jPlayer
  13. 使用MBROSTool 工具制作U盘多启动盘的方法总结
  14. linux小白成长之路8————访问Docker中的mysql
  15. 【Alpha】项目展示
  16. 【转】.MD语法入门
  17. hdu2871 区间合并(类似poj3667)+vector应用
  18. kafka其中一台节点坏掉的迁移或者数据迁移
  19. NodeJs进击,新建一个Node Server
  20. ubantu 设置默认python3.叽叽叽的环境变量

热门文章

  1. datetime和date如何转json
  2. Mac上Node环境配置
  3. PIE SDK影像格式转换
  4. sourceTree免登陆
  5. python中时间对象生成及时间格式的转换
  6. 代码重构----使用java有限状态机来消除太多的if else判断
  7. xss攻击汇总--转
  8. Bootstrap入门(第一天)
  9. 【学习笔记】使用SQLyog连接MySQL数据库
  10. fegin client使用http url合约时报: [Request processing failed; nested exception is feign.FeignException: status 400 reading