Python基础笔记系列八:字符串的运算和相关函数
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!!
- 字符串的运算
1.字符串的加法和乘法
python中不但支持字符串相加,还支持字符串的乘法,使用起来相当方便。加法就是将两个字符串连接在一起,而乘法就是字符串的多次相加。
例子:str8 = 'hello '
str9 = 'world!'
#字符串连接
print str8+str9
#实现10个段横线的输出
print "-"*10
#输出3个hello
print str8*3输出:
hello world!
----------
hello hello hello2.字符串的成员运算符
1)in和not in 运算:in 运算用于判断某个字符或子串是否在字符串中,not in运算符与in 运算相反用于判断某个字符或子串是否不在字符串中。
例子:#如果字符串中包含给定的字符串,返回True
str8 = 'hello '
print 'he' in str8
#如果字符串中不包含给定的字符串,返回True
print 'hc' not in str8输出:
True
True2)字符串的格式化(支持占位符)
例子:#字符串的格式化(支持占位符)
dic = ('yyc',50)
print 'my name is %s,weight is %d kg.'%dic输出:
my name is yyc,weight is 50 kg.
字符串函数
字符串拥有很多函数,下面的例子中是最常用的,以例子来说明。
例子:mystr = 'hello world start leaning and hello and world!'
print mystr.find('and') #查找字符串中第一个'and'出现的位置
print mystr.find('and',27) #从第27的位置开始找
print mystr.find('and',0,len(mystr)) #从第一个字符到字符串结尾找第一个'and'出现的位置,可以缺省start ,end即起止参数
#-----mystr.rfind() 从右开始查找
print mystr.index('and') #和find差不多,但是index中的参数在mystr中不存在则会抛出异常
print mystr.count("and") #统计'and'出现的次数,同样和find一样可以有3个参数
mystr1 = mystr.encode(encoding="utf-8") #按指定编码方式编码
print type(mystr1)
mystr2 = mystr1.decode(encoding="utf-8",errors="strict") #按指定编码方式解码,
#errors参数为strict,如果编码错误会抛出ValueError异常,除非errors指定的是ignore或replace
print mystr2
print type(mystr2)
print mystr.replace('and','or') #字符串替换函数,返回替换后的字符串,但是mystr本身并没有改变,除非mystr=mystr.replace('and','or')
print mystr
print mystr.replace('and','or',1) #只替换一次
print mystr.split(' ') #按照空格进行分割,放到一个列表里
print mystr.split(' ',3)#按照空格分割成4个子串
#****************另外字符串还有很多判断函数(查文档吧,太多了)**********************输出:
26
36
26
26
2
<type 'str'>
hello world start leaning and hello and world!
<type 'unicode'>
hello world start leaning or hello or world!
hello world start leaning and hello and world!
hello world start leaning or hello and world!
['hello', 'world', 'start', 'leaning', 'and', 'hello', 'and', 'world!']
['hello', 'world', 'start', 'leaning and hello and world!']
Python基础笔记系列八:字符串的运算和相关函数的更多相关文章
- Python基础笔记系列十一:标准输入输出、文件读写和指针等操作
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 标准输入输出一.输入 在sublime中这个时候需要安装SublimeRE ...
- Python基础笔记系列一:基本工具与表达式
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 工具基础(Windows系统下)传送门:Python基础笔记系列四:工具的 ...
- Python基础笔记系列七:字符串定义和访问
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 字符串定义和访问 1.字符串基础 a.字符串可以用单引号.双引号.三引号( ...
- Python基础笔记系列三:list列表
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! python中的list列表是一种序列型数据类型,一有序数据集合用逗号间隔 ...
- Python基础笔记系列十四:python无缝调用c程序
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! python语言可以对c程序代码进行调用,以弥补python语言低性能的缺 ...
- Python基础笔记系列十三:socket网络编程
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!!使用python编写一个简易的服务端程序和客户端程序,启动服务端和客户端(监 ...
- Python基础笔记系列九:变量、自定义函数以及局部变量和全局变量
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 变量在前面的系列中也许就可以发现,python中的变量和C中的变量有些许不 ...
- Python基础笔记系列六:字典
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 字典字典的元素是由一对对键值对组成,每一对之间用逗号隔开,将所有的键值对用 ...
- Python基础笔记系列十二:requests模块的简单应用
本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! httpbin httpbin这个网站能测试 HTTP 请求和响应的各种信 ...
随机推荐
- Visual Studio 2017 新特性
1. out-variables(Out变量) 以前,我们使用out变量的时候,需要在外部先申明,然后才能传入方法,类似如下: string ddd = ""; //先申明变量 c ...
- 自定义HTTP头时的注意事项(转)
原文:https://blog.gnuers.org/?p=462 HTTP头是可以包含英文字母([A-Za-z]).数字([0-9]).连接号(-)hyphens, 也可义是下划线(_).在使用ng ...
- 金融量化ushare模块
一.介绍 Tushare是一个免费.开源的python财经数据接口包.主要实现对股票等金融数据从数据采集.清洗加工 到 数据存储的过程,能够为金融分析人员提供快速.整洁.和多样的便于分析的数据,为他们 ...
- centos7配置IP地址
有关于centos7获取IP地址的方法主要有两种,1:动态获取ip:2:设置静态IP地址 在配置网络之前我们先要知道centos的网卡名称是什么,centos7不再使用ifconfig命令,可通过命令 ...
- HBase在HDFS上的目录树
众所周知,HBase 是天生就是架设在 HDFS 上,在这个分布式文件系统中,HBase 是怎么去构建自己的目录树的呢? 这里只介绍系统级别的目录树: 一.0.94-cdh4.2.1版本 系统级别的一 ...
- robotFramework_ride_python2_Wxpython测试环境搭建
(提示:我的安装版本是robotFramework3.0+ride1.5+python2.7+wxpython2.8,至于wxpython3.0下ride安装打不开的问题我还没找到原因,建议刚开始先不 ...
- DataGird 相关
DataGird控件 DataGirdView 控件 DataGird类 他们之间是什么关系??????? DataGridView 控件是替换 DataGrid 控件的新控 ...
- springboot 整合 CXF 版本异常 java.lang.NoClassDefFoundError:ServletRegistrationBean
在使用SpringBoot 项目整合webservice组件 CXF的时候,在启动时,抛出异常如下,查阅资料初步判断为版本问题.升级到高版本后正常启动. cxf 刚开始使用版本 3.1.7 后更新为 ...
- java 并发——内置锁
坚持学习,总会有一些不一样的东西. 一.由单例模式引入 引用一下百度百科的定义-- 线程安全是多线程编程时的计算机程序代码中的一个概念.在拥有共享数据的多条线程并行执行的程序中,线程安全的代码会通过同 ...
- 42. Trapping Rain Water(直方图 存水量 hard)
Given n non-negative integers representing an elevation map where the width of each bar is 1, comput ...