20170721_python字符串操作_《python语言及其应用》
str = 'abcde...wxyz'
[num]提取指定字符
str[0] == 'a'
str[1] == 'b'
str[-1] == 'z'
[start:end:step]分片/切片,一定要带上:冒号.end是偏移量,偏移位数,偏移到的key=偏移位数-1
str[:] == str[0:] ==str[0:-1] == str[0:26] == str #取所有元素
str[:10] == str[0:10] = 'abcdefghi' #从0开始取10位,也就是 str[0]到str[9]
str[23:] == str[-3:] == 'xyz' #从str[23]开始取到最后 == 从倒数第三位取到最后
str[19::4] == 'tx' #从str[19]开始每隔4位取1次
str[:21:5] =='afkpu' #从第一位开始取到21位,每隔5位取1次
str[::7] == 'ahov' #从0开始到最后,每隔7位取1次
str[-1::-1] == str[::-1] == 'zyxw...cba' #从最后一位取到第一位,每隔-1位取一次
切片start:小于起始位置的偏移量被当做0,也就是起始位置,end:大于终止位置的偏移量被当做-1
end可以理解为
①提取到str[end]的前一位,也就是str[end-1]位,
②也可以理解为提取到第end位,由于是从0开始,那么第end位为str[end-1] (自己的理解,应该没错)
split()分割/提取?以指定字符为分隔符,把字符串分割为由若干子串组成的列表list.
str = 'abc , def , higkl,mn opq'
str.split(',') == ['abc', 'def', 'higkl', 'mn opq'] #以,为分隔符,组成list
str.split() == ['abc', ',', 'higkl,mn', 'opq'] #如果没有指定分隔符,则默认为空格或换行
join()列表合并字符串
strList = ['A', 'B', 'C', 'D']
str = ','.join(strList) #str = 'A,B,C,D',把列表的元素取出来,以','逗号为分隔符连接起来
字符串查找
str = '''Today, my friends and I decided to take a visit to an old town which was near our city.
We had heard of it for a long time, but we never had the chance to go there.
A week ago, I happened to read an article about the old town'''
str.startswith('Today') == True #是不是以'Today'开头,这里区分大小写
str.endswith('there.') == True #是不是以'there.'结尾
str.find('we') #查找第一次出现'we'的位置(偏移量)
str.rfind('we') #查找最后一次出现'we'的位置(偏移量)
str.count('we') #查找'we'出现的次数
str.isalnum() == False #所有的字符都是数字或者字母
字符串删除和格式化(如大小写)
str = ' my friends and ...'
str.strip('.') == 'my friends and' #删除所有'.'字符
str.capitalize() == 'My friends and' #首字母大写
str.title() == 'My Friends And' #所有单词首字母大写
str.upper() str.lower() #所有字母大写/小写
str.swapcase() #所有字母大小写转换
str.center(30) == ' my friends and ... ' #在30个字符位居中显示
str.ljust(30) str.rjust(30) #同上 居左 居右显示
replace()字符串替换,参数:需要被替换的子串,用于替换的新子串,需要替换多少次(为空则默认只替换第一个)
str = 'AA, ABab '
str.replace('A','AA') == 'AAA, ABab' #只替换第一个
str.replace('A','AA',3) == 'AAAA,AABab'#替换3次
以上的字符串操作都没有改变字符串,在python中字符串是不可变的,应该是在内存中创建了一个字符串,这个字符串无法被改变
上面的操作只是在内存中建立了一个新的字符串,可以指向一个新建的变量来保存他
如str = 'abc' str += 'def'
①新建abc字符串
②新建str变量
③str指向abc,或者是str引用了abc?
④新建一个字符串 abcdef
⑤abcdef指向str
⑥abc没有被引用或者指向,然后就被回收了?
20170721_python字符串操作_《python语言及其应用》的更多相关文章
- python基础操作_字符串操作_列表操作list
#字符串可以通过下表取值,如下程序 names='java python' print(names[0],names[5]) #使用for循环轮询所有name值 ''' for name in nam ...
- Python语言数据结构和语言结构(2)
目录 1. Python预备基础 2. Python数据类型 3. Python条件语句 4. while循环和for循环 1. Python预备基础 1.1 变量的命名 变量命名规则主要有以下几 ...
- java===java基础学习(4)---字符串操作
java中的字符串操作和python中的大致相同,需要熟悉的就是具体操作形式. 关于具体api的使用,详见:java===字符串常用API介绍(转) package testbotoo; public ...
- 实验楼Python学习记录_挑战字符串操作
自我学习记录 Python3 挑战实验 -- 字符串操作 目标 在/home/shiyanlou/Code创建一个 名为 FindDigits.py 的Python 脚本,请读取一串字符串并且把其中所 ...
- Python 字符串操作及string模块使用
python的字符串操作通过2部分的方法函数基本上就可以解决所有的字符串操作需求: python的字符串属性函数 python的string模块 1.字符串属性方法操作: 1.>字符串格式输出对 ...
- [Python学习笔记1]Python语言基础 数学运算符 字符串 列表
这个系列是我在学习Python语言的过程中记录的笔记,主要是一些知识点汇总,而非学习教程,可供有一定编程基础者参考.文中偏见和不足难以避免,仅供参考,欢迎批评指正. 本系列笔记主要参考文献是官网文档: ...
- Python之字符串操作
一.字符串特点 内容不可修改 password=' #内容不可修改 二.字符串常用方法 1..strip()方法 去字符串两边的空格和换行符 print(password.strip()) #去掉字符 ...
- Python语言程序设计之三--列表List常见操作和错误总结
最近在学习列表,在这里卡住了很久,主要是课后习题太多,而且难度也不小.像我看的这本<Python语言程序设计>--梁勇著,列表和多维列表两章课后习题就有93道之多.我的天!但是题目出的非常 ...
- 6. Go语言—字符串操作
一.字符串支持的转义字符 \r 回车符(返回行首) \n 换行符(直接跳到下一行的同列位置) \t 制表符 \' 单引号 \" 双引号 \\ 反斜杠 \uXXXX Unicode字符码值转义 ...
随机推荐
- Visual Studio Code 使用心得
Visual Studio Code 使用心得 最好用的跨平台编辑器,没有之一! 修改编辑器的显示语言 起因:vsCode又升级了(1.13.0),重启之后发现熟悉的中文菜单没有了,而且设置文件 se ...
- 抓包工具-Wireshark(详细介绍与TCP三次握手数据分析)
功能使用的详细介绍 wireshark(官方下载网站: http://www.wireshark.org/),是用来获取网络数据封包,可以截取各种网络封包,显示网络封包的详细信息,包括http,TCP ...
- Bootstrap & 响应式
要了解一个东西 就是要知道 它是什么? 干什么 ? 怎么用 ? 1.Bootstrap 简介 Bootstrap 是由Twitter(著名的社交网站)推出的前端开源工具包,它基于Html.CSS. ...
- Oracle查询数据出来乱码问题?
为什么Oracle 查询出来的数据会产生乱码? 安装的数据库和客户端编码编码不一致就会产生乱码,要想解决此问题改一下客户端的编码即可 1. select * from table; 如果是这种问题 ...
- Tomcat7配置管理员帐号密码及权限
在使用tomcat时,若要使用管理监控功能,需要用用户名密码登录使用,而tomcat7默认是将用户是注释的,所以需要配置后使用, 配置文件为根目录下的/conf/tomcat-users.xml文件. ...
- thinkphp中find()和select()的区别
1.find()是查找符合条件的第一条数据,返回的是一个一维数组: select()是查找符合条件的所有的数据,返回的是一个二维数组: 2.以下案例 $tech=M('techlevel','HR_C ...
- node.js零基础详细教程(7.5):mongo可视化工具webstorm插件、nodejs自动重启模块Node Supervisor(修改nodejs后不用再手动命令行启动服务了)
第七章 建议学习时间4小时 课程共10章 学习方式:详细阅读,并手动实现相关代码 学习目标:此教程将教会大家 安装Node.搭建服务器.express.mysql.mongodb.编写后台业务逻辑. ...
- Laravel踩坑笔记——illuminate/html被抛弃
起因 在使用如下代码的时候发生报错 {!! Form::open() !!} 错误信息 [Symfony\Component\Debug\Exception\FatalErrorException] ...
- 用Html5/CSS3做Winform,一步一步教你搭建CefSharp开发环境(附JavaScript异步调用C#例子,及全部源代码)上
本文为鸡毛巾原创,原文地址:http://www.cnblogs.com/jimaojin/p/7077131.html,转载请注明 CefSharp说白了就是Chromium浏览器的嵌入式核心,我们 ...
- DocNan博文目录
算法 时频分析:窗口傅立叶变换 数学误区:乘积的求和 MHD simulation with python Linux Linux: Bash基本命令 Linux: 安装和启用firefox浏览器的j ...