洗礼灵魂,修炼python(9)--灵性的字符串
python几大核心之——字符串
1.什么是字符串
其实前面说到数据类型时说过了,就是带有引号的参数,“”引号内的一切东西就是字符串,字符串又叫文本。
2.创建字符串的两种方式:
3.字符串的方法:
python2:
python3:
同样的,不同版本里字符串的方法还是很多不一样,老套路,我还是只解析常用的:capitalize,casefold.center,count,decode,encode,endswith,expandtabs,find,format,index,isalnum,isalpha,isdigit,isidentifier,islower,isspace,istitle,isupper,join,ljust,lower,lstrip,partition,replace,rfind,rindex,rjust,rpartition,rpslit,rstrip,split,splitines,startwith,strip', swapcase, title, translate, upper, zfill(是不是有点多,是的,因为字符串在实际的开发中最常用,所以方法用的也多)
captalize:把整个字符串的第一个单词的首字母大写并返回
但注意的是,字符串是不可变对象,所以不改变自身
casefold:把整个字符串的所有字符改为小写,python3里特有的
center(width):把字符串居中,并使用空格填充至长度 width 的新字符串
count(sub[, start[, end]]):返回 sub 在字符串里边出现的次数,start 和 end 参数表示范围,前面的集合等使用过,不再演示
decode(decode='strict'):把已知的编码方式解码为Unicode,前面解释过,在python3里不再有此方法
encode(encoding='utf-8', errors='strict'):以 encoding 指定的编码格式对字符串进行编码,前面解释过
在python3不需要decode再encode,直接使用encode:
endswith(sub[, start[, end]]):检查字符串是否以 sub 子字符串结束,如果是返回 True,否则返回 False。start 和 end 参数表示范围,可选
startswith(prefix[, start[, end]]):检查字符串是否以 prefix 开头,是则返回 True,否则返回 False。start 和 end 参数可以指定范围检查,可选
expandtabs([tabsize=8]):把字符串中的 tab 符号(\t)转换为空格,如不指定参数,默认的空格数是 tabsize=8
这个没法看出效果,自己动手操作体会吧
find(sub[, start[, end]]):检测 sub 是否包含在字符串中,如果有则返回索引值,否则返回 -1,start 和 end 参数表示范围,可选
rfind(sub[, start[, end]]):类似于 find() 方法,不过是从右边开始查找
foramt:格式化字符串(详见下面第6点)
index(sub[, start[, end]]):跟 find 方法一样,不过如果 sub 不在 string 中会产生一个异常
rindex(sub[, start[, end]]):类似于 index() 方法,不过是从右边开始
isalnum():如果字符串至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False
前者因为含有逗号和空格,所以False
isalpha():如果字符串至少有一个字符并且所有字符都是字母则返回 True,否则返回 False
前者含有空格
isdecimal():如果字符串只包含十进制数字则返回 True,否则返回 False,这是python3特有
isdigit():如果字符串只包含数字则返回 True,否则返回 False
isnumeric():如果字符串中只包含数字字符,则返回 True,否则返回 False,和上面的isdigit方法相同,不再演示
islower():如果字符串中至少包含一个区分大小写的字符,并且这些字符都是小写,则返回 True,否则返回 False
isspace():如果字符串中只包含空格,则返回 True,否则返回 False
istitle():如果字符串是标题化(所有的单词都是以大写开始,其余字母均小写),则返回 True,否则返回 False
isupper():如果字符串中至少包含一个区分大小写的字符,并且这些字符都是大写,则返回 True,否则返回 False
join(sub):以字符串作为分隔符,插入到 sub 中所有的字符之间
ljust(width):返回一个左对齐的字符串,并使用空格填充至长度为 width 的新字符串
lower():转换字符串中所有大写字符为小写。
partition(sub):找到子字符串 sub,把字符串分成一个 3 元组 (pre_sub, sub, fol_sub),如果字符串中不包含 sub 则返回 ('原字符串', '', '')
rpartition(sub):类似于 partition() 方法,不过是从右边开始查找
replace(old, new[, count]):把字符串中的 old 子字符串替换成 new 子字符串,如果 count 指定,则替换不超过 count 次
rjust(width):返回一个右对齐的字符串,并使用空格填充至长度为 width 的新字符串
split(sep=None, maxsplit=-1):不带参数默认是以空格为分隔符切片字符串,如果 maxsplit 参数有设置,则仅分隔 maxsplit 个子字符串,返回切片后的子字符串拼接的列表
splitlines(([keepends])):按照 '\n' 分隔,返回一个包含各行作为元素的列表,如果 keepends 参数指定,则返回前 keepends 行
strip([chars]):删除字符串前边和后边所有的空格,chars 参数可以定制删除的字符,可选
lstrip():去掉字符串左边的所有空格
rstrip():删除字符串末尾(右边)的空格。
swapcase():翻转字符串中的大小写
title():返回标题化(所有的单词都是以大写开始,其余字母均小写)的字符串
translate(table):根据 table 的规则(可以由 str.maketrans('a', 'b') 定制,maketrans方法是python特有,用的较少)转换字符串中的字符
upper():转换字符串中的所有小写字符为大写
zfill(width):返回长度为 width 的字符串,原字符串右对齐,前边用 0 填充
4.字符串也可以被看作一个不可变的列表
怎么说?请看:
5.字符串也可以切片
6.字符串拼接到字符串格式化
字符串拼接就是把多个字符串对象用符号【+】拼接起来
但是不同类型的对象是不能拼接的,比如:
其实还有个问题,用+拼接是有点万恶的,为什么叫万恶,比如:
还是这个例子,有没有发现【yangI】是连在一起的,不过你可以这样:
手动在前面加个逗号,但是如果要处理很大的数据,这样是手动搞很麻烦的,开发程序还要耗时间来搞这种毫无技术含量有费时的问题是万恶的
所以,换一种方式,格式化,格式化字符串是最常用的,格式化在数据类型提到了一点点,说,只要【%】符号遇到字符串,这符号就不再是取余。具体的符号和对应的含义请看下面:
%c:格式化字符及其 ASCII 码 %s:格式化字符串 %d:格式化整数 %o:格式化无符号八进制数 %x:格式化无符号十六进制数 %X:格式化无符号十六进制数(大写) %f:格式化浮点数字,可指定小数点后的精度 %e:用科学计数法格式化浮点数 %E:作用同 %e,用科学计数法格式化浮点数 %g:根据值的大小决定使用 %f 或 %e %G:作用同 %g,根据值的大小决定使用 %f 或者 %E
实例:多种方式打印【I love python】
说到这,就得把字符串格式化相关的都摆出来:
格式化操作符辅助命令:
* 定义宽度或者小数点精度 - 用做左对齐 + 在正数前面显示加号( + ) <sp> 在正数前面显示空格 \# 在八进制数前面显示零('0'),在十六进制前面显示'0x'或者'0X'(取决于用的是'x'还是'X') 0 显示的数字前面填充`0`而不是默认的空格 % '%%'输出一个单一的'%' var) 映射变量(字典参数) m.n. m是显示的最小总宽度,n是小数点后的位数(如果可用的话)
洗礼灵魂,修炼python(9)--灵性的字符串的更多相关文章
- 洗礼灵魂,修炼python(85)-- 知识拾遗篇 —— 深度剖析让人幽怨的编码
编码 这篇博文的主题是,编码问题,老生常谈的问题了对吧?从我这一套的文章来看,前面已经提到好多次编码问题了,的确这个确实很重要,这可是难道了很多能人异士的,当你以为你学懂了,在研究爬虫时你发现你错了, ...
- 洗礼灵魂,修炼python(69)--爬虫篇—番外篇之feedparser模块
feedparser模块 1.简介 feedparser是一个Python的Feed解析库,可以处理RSS ,CDF,Atom .使用它我们可从任何 RSS 或 Atom 订阅源得到标题.链接和文章的 ...
- Python:常见操作字符串的函数
Python中提供了很多操作字符串的函数: string = "hello, my dear python!" string.capitalize() #将字符串中的第一个字母大写 ...
- Python内置的字符串处理函数整理
Python内置的字符串处理函数整理 作者: 字体:[增加 减小] 类型:转载 时间:2013-01-29我要评论 Python内置的字符串处理函数整理,收集常用的Python 内置的各种字符串处理 ...
- xsank的快餐 » Python simhash算法解决字符串相似问题
xsank的快餐 » Python simhash算法解决字符串相似问题 Python simhash算法解决字符串相似问题
- Python打印格式化与字符串
关于Python打印格式化与字符串,比较全面的总结,希望对大家有帮助~ # -*- coding: cp936 -*- ''' 打印格式 ''' print "a" print & ...
- python学习第九讲,python中的数据类型,字符串的使用与介绍
目录 python学习第九讲,python中的数据类型,字符串的使用与介绍 一丶字符串 1.字符串的定义 2.字符串的常见操作 3.字符串操作 len count index操作 4.判断空白字符,判 ...
- Python基础:数据类型-字符串(7)
1.字符串基本操作 字符串是由字符组成的一串字符序列,字符串是有顺序的,从左到右,索引从0开始,依次递增. Python中字符串类型:str. Python中字符串的三种表示方式: (1)普通字符串: ...
- python生成随机日期字符串
python生成随机日期字符串 生成随机的日期字符串,用于插入数据库. 通过时间元组设定一个时间段,开始和结尾时间转换成时间戳. 时间戳中随机取一个,再生成时间元组,再把时间元组格式化输出为字符串 # ...
随机推荐
- CSS基础和选择器
什么是CSS? CSS是指层叠样式表(Cascading Style Sheets),样式定义如何显示HTML元素,样式通常又会存在于样式表中.也就是说把HTML元素的样式都统一收集起来写在一个地方或 ...
- linux中一些简便的命令之cut
提中的这些命令都是些小命令,很简便,在工作过程中经常使用,具体使用方法如下: cut 使用说明:一般是把某个整齐的文档输出其中某列使用 常用的参数有: -f 选择打印的列 -d 指定定界符(默认定界符 ...
- Java工程师学习指南 入门篇
Java工程师学习指南 入门篇 最近有很多小伙伴来问我,Java小白如何入门,如何安排学习路线,每一步应该怎么走比较好.原本我以为之前的几篇文章已经可以解决大家的问题了,其实不然,因为我之前写的文章都 ...
- 7.28-说说对javaweb的感想吧
接触了几个月的java,和javaweb. 感想1:发现生活顿时充实了很多,时间照样在过,日落日出,但是手里面有学的,有可以让自己开心地码出理想的效果,这是很不错的结局. 发现自己再也不回去和伙伴们撸 ...
- oracle笔记--查询10条之后记录的数据
本文版权归 远方的风lyh和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作. 由于之前一直在用mysql 对于oracle 的一些语法不太了解,自己有一次去面试让写一个oracle ...
- C#对象内部属性排序测试
构建对象: class SortGrid { int indexI; int indexJ; public SortGrid(int x, int y) { indexI = x; indexJ = ...
- 使用go语言编写IOS和Android程序
go语言目前已可以用来开发android和ios手机app.相关资料: 1.IOS https://groups.google.com/forum/?utm_medium=email&utm_ ...
- C# GDI+编程之剖析startAngle和sweepAngle
以DrawArc为例,它有一种形式如下的构造函数 public void DrawArc(Pen pen, Rectangle rect, float startAngle, float sweepA ...
- drupal简单安装和插件安装
1.从官网下载drupal安装包:https://www.drupal.org/download 2.windows下使用WAMPSERVER作为php的服务器,在官网http://www.wamps ...
- vb.bet 控件
TextBox1.BackColor = Color.White'设置控件的背景色(白色) TextBox1.BackColor = Color.Yellow'设置控件的背景色(黃色) TextBox ...