python入门7 字符串操作
字符串操作
#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 字符串操作的更多相关文章
- Python入门之 字符串操作,占位符,比较大小 等
Python 字符串 常用的操作 切片 左包括右不包括的原则 ________________ 比较字符串大小 eg: cmp("a",'b') -1第一个比第二个小 0 ...
- Python入门篇-文件操作
Python入门篇-文件操作 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.文件IO常用操作 open:打开 read:读取 write:写入 close:关闭 readlin ...
- Python中的字符串操作总结(Python3.6.1版本)
Python中的字符串操作(Python3.6.1版本) (1)切片操作: str1="hello world!" str1[1:3] <=> 'el'(左闭右开:即是 ...
- 一句python,一句R︱python中的字符串操作、中文乱码、NaN情况
一句python,一句R︱python中的字符串操作.中文乱码.NaN情况 先学了R,最近刚刚上手Python,所以想着将python和R结合起来互相对比来更好理解python.最好就是一句pytho ...
- 【Python自动化Excel】Python与pandas字符串操作
Python之所以能够成为流行的数据分析语言,有一部分原因在于其简洁易用的字符串处理能力. Python的字符串对象封装了很多开箱即用的内置方法,处理单个字符串时十分方便:对于Excel.csv等表格 ...
- [Python Study Notes]字符串操作
字符串操作 a.字符串格式化输出 name = "liu" print "i am %s " % name #输出: i am liu PS: 字符 ...
- (Python基础)字符串操作
以下是我在学习过程中用的一些常用字符串操作的相关列子和具体注释,感兴趣的可以自己动手试试看 #字符串操作 name = 'my name is keep' print(name.capitalize( ...
- python入门6 字符串拼接、格式化输出
字符串拼接方式 1 使用 + 拼接字符串 2 格式化输出:%s字符串 %d整数 %f浮点数 %%输出% %X-16进制 %r-原始字符串 3 str.format() 代码如下: #codin ...
- 一句python,一句R︱python中的字符串操作、中文乱码
先学了R,最近刚刚上手python,所以想着将python和R结合起来互相对比来更好理解python.最好就是一句python,对应写一句R. pandas可谓如雷贯耳,数据处理神器. 以下符号: = ...
随机推荐
- 文献综述六:基于JS 技术的电子商品管理系统设计及实现
一.基本信息 标题:基于JS 技术的电子商品管理系统设计及实现 时间:2017 出版源:无线互联科技 文件分类:js技术的研究 二.研究背景 主要对Js下电商管理系统的设计及实现进行了探讨,利用软件工 ...
- Mina初识
1.概述 1.1 Apache的顶级项目,基于java NIO,支持TCP/IP.UDP/IP: 1.2 Mina对外屏蔽了java NIO使用的复杂性,并在性能上做了不少的优化: 1.3 Mina采 ...
- OSG DB的插件地址设置
今天搞了一整天OSG,结果每次都说could not find plugin,就是说找不到OSG的插件去加载文件,我大概看了下OSG的插件机制,发现他是用插件的形式下去读取文件的 http://blo ...
- 生产者与消费者模式-阻塞 wait,notify
设计思路:生产者push ,消费者 拿,篮子装,syncstack先进后出,while 判断 index=0 wait, 当 Producer生产了 并push到篮子里 notify(唤醒 ...
- Oracle命令整理
1 常用命令 常用命令 1 sqlplus scott/tiger@192.168.47.10:1521/orcl 后面不要加: sqlplus sys/oracle as sysdb ...
- TOJ 2861 Octal Fractions
描述 Fractions in octal (base 8) notation can be expressed exactly in decimal notation. For example, 0 ...
- 表单提交前的confirm验证提示
今天要做一个修改提交前的提示,点击修改按钮进行提示,然后根据confirm的结果来决定是否提交;发现平时很常见的一个功能,自己不会.所以只能去晚上找资料了; 举例如下: <form action ...
- node.js中的模板引擎jade、handlebars、ejs
使用node.js的Express脚手架生成项目默认是jade模板引擎,jade引擎实在是太难用了,这么难用还敢设为默认的模板引擎,过分了啊!用handlebars模板引擎写还说的过去,但笔者更愿意使 ...
- 2017年11月4日 vs类和结构的区别&哈希表&队列集合&栈集合&函数
类和结构的区别 类: 类是引用类型在堆上分配,类的实例进行赋值只是复制了引用,都指向同一段实际对象分配的内存 类有构造和析构函数 类可以继承和被继承 结构: 结构是值类型在栈上分配(虽然栈的访问速度比 ...
- STL库中string类内存布局的探究
在STL中有着一个类就是string类,他的内存布局和存储机制究竟是怎么样的呢? 这就是建立好的string 可以看出,图中用黄色框框标注的部分就是主要区域 我们用来给string对象进行初始化的字符 ...