字符串操作

#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)

python入门7 字符串操作的更多相关文章

  1. Python入门之 字符串操作,占位符,比较大小 等

    Python  字符串 常用的操作 切片 左包括右不包括的原则 ________________ 比较字符串大小 eg: cmp("a",'b')   -1第一个比第二个小  0 ...

  2. Python入门篇-文件操作

    Python入门篇-文件操作 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.文件IO常用操作 open:打开 read:读取 write:写入 close:关闭 readlin ...

  3. Python中的字符串操作总结(Python3.6.1版本)

    Python中的字符串操作(Python3.6.1版本) (1)切片操作: str1="hello world!" str1[1:3] <=> 'el'(左闭右开:即是 ...

  4. 一句python,一句R︱python中的字符串操作、中文乱码、NaN情况

    一句python,一句R︱python中的字符串操作.中文乱码.NaN情况 先学了R,最近刚刚上手Python,所以想着将python和R结合起来互相对比来更好理解python.最好就是一句pytho ...

  5. 【Python自动化Excel】Python与pandas字符串操作

    Python之所以能够成为流行的数据分析语言,有一部分原因在于其简洁易用的字符串处理能力. Python的字符串对象封装了很多开箱即用的内置方法,处理单个字符串时十分方便:对于Excel.csv等表格 ...

  6. [Python Study Notes]字符串操作

    字符串操作 a.字符串格式化输出 name = "liu" print "i am %s " % name     #输出: i am liu   PS: 字符 ...

  7. (Python基础)字符串操作

    以下是我在学习过程中用的一些常用字符串操作的相关列子和具体注释,感兴趣的可以自己动手试试看 #字符串操作 name = 'my name is keep' print(name.capitalize( ...

  8. python入门6 字符串拼接、格式化输出

    字符串拼接方式    1  使用 + 拼接字符串 2 格式化输出:%s字符串 %d整数 %f浮点数 %%输出% %X-16进制 %r-原始字符串 3 str.format() 代码如下: #codin ...

  9. 一句python,一句R︱python中的字符串操作、中文乱码

    先学了R,最近刚刚上手python,所以想着将python和R结合起来互相对比来更好理解python.最好就是一句python,对应写一句R. pandas可谓如雷贯耳,数据处理神器. 以下符号: = ...

随机推荐

  1. SQL中的正则表达式

    [转自] http://blog.csdn.net/weiwenhp/article/details/6943834 当我们要进行一些简单的糊涂查询时用百分号(%),通配符(_)就可以了.其中%表达任 ...

  2. 异步的模块合并管理器-m3m4版本和jquery版本(原创)

    m3m4版本 (function(w){ var loading={} var models={} function define(name,args){ loading[name]=true mod ...

  3. centeros下安装python3

    一.查看python版本及安装python3 1. which python 可以看到预装的是2.7版本 2.安装依赖包 yum -y groupinstall "Development t ...

  4. 关闭Eclipse按空格和等号键自动补全内容

    当我们在Eclipse中设置按下任何字母都弹出候选菜单后(默认只有再按"."后才会后输入的弹出菜单), 当是设置完后每次在输入变量的时候Eclipse就会自动给我们补全变量,就是在 ...

  5. 使用JWT来实现单点登录功能

    出处: https://www.cnblogs.com/zexin/p/10389541.html 我们平时自己开发项目,分布式的结构时,访问量不大,但是又不想搭建redis服务器,这时我觉得jwt不 ...

  6. java判断jsonObject和jsonArray是否为空

    resJsonObj = {"res":"0","msg":"","data":{"Nam ...

  7. Oracle 基础系列之1.2 oracle的基本使用

    在1.1的安装过程完成之后,进入第二部分,oracle的基本使用,在使用前,首先测试下,oracle是否安装成功,以及检查oracle的关键服务时候开启 1.首先测试下,oracle是否安装成功 打开 ...

  8. 队列同步器AbstractQueuedSynchronizer

    AQS是用来构建锁或者其它同步组件的基础框架,它使用一个int变量来表示同步状态,通过内置的FIFO队列来完成获取线程的排队工作,concurrent包的作者Doug Lea期望它能称为实现大部分同步 ...

  9. 8086实时时钟实验(一)——《x86汇编语言:从实模式到保护模式》05

    1.代码清单 ;代码清单9-1 ;文件名:c09_1.asm ;文件说明:用户程序 ;创建日期:2011-4-16 22:03 ;=================================== ...

  10. tomcat修改jvm内存

    内存大小:-Xms256M -Xmx512M -XX:PermSize=256m -XX:MaxNewSize=256m -XX:MaxPermSize=512m -Djava.awt.headles ...