跟老齐学Python之玩转字符串(2)


Posted in Python onSeptember 14, 2014

上一章中已经讲到连接两个字符串的一种方法。复习一下:

>>> a= 'py'
>>> b= 'thon'
>>> a+b
'python'

既然这是一种方法,言外之意,还有另外一种方法。

连接字符串的方法2

在说方法2之前,先说明一下什么是占位符,此前在讲解变量(参数)的时候,提到了占位符,这里对占位符做一个比较严格的定义:

来自百度百科的定义:

顾名思义,占位符就是先占住一个固定的位置,等着你再往里面添加内容的符号。
根据这个定义,在python里面规定了一些占位符,通过这些占位符来说明那个位置应该填写什么类型的东西,这里暂且了解两个占位符:%d——表示那个位置是整数,%s——表示那个位置应该是字符串。下面看一个具体实例:

要求打印(print)的内容中,有一个%d占位符,就是说那个位置应该放一个整数。在第二个%后面,跟着的就是那个位置应该放的东西。这里是一个整数1。我们做下面的操作,就可以更清楚了解了:

>>> a=1
>>> type(a)
<type 'int'> #a是整数
>>> b="1"
>>> type(b)
<type 'str'> #b是字符串
>>> print "one is %d"%a
one is 1
>>> print "one is %d"%b  #报错了,这个占位符的位置应该放整数,不应该放字符串。
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
TypeError: %d format: a number is required, not str

同样道理,%s对应的位置应该放字符串,但是,如果放了整数,也可以。只不过是已经转为字符串对待了。但是不赞成这么做。在将来,如果使用mysql(一种数据库)的时候,会要求都用%s做为占位符,这是后话,听听有这么回事即可。

>>> print "one is %s"%b
one is 1
>>> print "one is %s"%a  #字符串是包容的
one is 1

好了。??掳胩欤?嘉环?遣皇抢斫饬四兀肯旅嫖颐蔷陀谜嘉环?戳?幼址??J遣皇呛苡幸馑迹?/p>

>>> a = "py"
>>> b = "thon"
>>> print "%s%s"%(a,b) #注

python
注:仔细观察,如果两个占位符,要向这两个位置放东西,代表的东西要写在一个圆括号内,并且中间用逗号(半角)隔开。

字符串复制

有一个变量,连接某个字符串,也想让另外一个变量,也连接这个字符串。一种方法是把字符串再写一边,这种方法有点笨拙,对于短的到无所谓了。但是长的就麻烦了。这里有一种字符串复制的方法:

>>> a = "My name is LaoQi. I like python and can teach you to learn it."
>>> print a
My name is LaoQi. I like python and can teach you to learn it.
>>> b = a
>>> print b
My name is LaoQi. I like python and can teach you to learn it.
>>> print a
My name is LaoQi. I like python and can teach you to learn it.

复制非常简单,类似与赋值一样。可以理解为那个字符串本来跟a连接着,通过b=a,a从自己手里分处一股绳子给了b,这样两者都可以指向那个字符串了。

字符串长度

要向知道一个字符串有多少个字符,一种方法是从头开始,盯着屏幕数一数。哦,这不是计算机在干活,是键客在干活。键客,不是剑客。剑客是以剑为武器的侠客;而键客是以键盘为武器的侠客。当然,还有贱客,那是贱人的最高境界,贱到大侠的程度,比如岳不群之流。

键客这样来数字符串长度:

>>> a="hello"
>>> len(a)
5

使用的是一个函数len(object)。得到的结果就是该字符串长度。

>>> m = len(a) #把结果返回后赋值给一个变量
>>> m
5
>>> type(m)  #这个返回值(变量)是一个整数型
<type 'int'>

字符大小写的转换

对于英文,有时候要用到大小写转换。最有名驼峰命名,里面就有一些大写和小写的参合。如果有兴趣,可以来这里看自动将字符串转化为驼峰命名形式的方法。

在python中有下面一堆内建函数,用来实现各种类型的大小写转化

S.upper() #S中的字母大写
S.lower() #S中的字母小写
S.capitalize() #首字母大写
S.istitle() #S是否是首字母大写的
S.isupper() #S中的字母是否便是大写
S.islower() #S中的字母是否全是小写

看例子:

>>> a = "Hello,World"
>>> a.upper()   #都是大写
'HELLO,WORLD'
>>> a.lower()   #都是小写
'hello,world'
>>> a.capitalize()  #首字母大写,其余小写
'Hello,wold'
>>> a.istitle()   #首字母是否是大写,如果是返回True,不是返回False
True
>>> a
'Hello,Wold'
>>> b="hellow,world"
>>> b.istitle()   #首字母不是大写,返回false
False
>>> a.islower()   #是否字符串中都是小写,如果是返回true,不是返回false
False
>>> b.islower()
True

字符串问题,看来本讲还不能结束。下一讲继续。有看官可能要问了,上面这些在实战中怎么用?我正想为你的,请键客设计一种实战情景,能不能用上所学。

Python 相关文章推荐
搞笑的程序猿:看看你是哪种Python程序员
Jun 12 Python
Python的Flask框架中使用Flask-SQLAlchemy管理数据库的教程
Jun 14 Python
对python的unittest架构公共参数token提取方法详解
Dec 17 Python
Python使用paramiko操作linux的方法讲解
Feb 25 Python
python浪漫表白源码
Apr 05 Python
一步步教你用python的scrapy编写一个爬虫
Apr 17 Python
python+opencv像素的加减和加权操作的实现
Jul 14 Python
Django缓存系统实现过程解析
Aug 02 Python
Python 音频生成器的实现示例
Dec 24 Python
如何在windows下安装Pycham2020软件(方法步骤详解)
May 03 Python
详解Python中的GIL(全局解释器锁)详解及解决GIL的几种方案
Jan 29 Python
python数据可视化JupyterLab实用扩展程序Mito
Nov 20 Python
跟老齐学Python之玩转字符串(1)
Sep 14 #Python
跟老齐学Python之永远强大的函数
Sep 14 #Python
用Python实现QQ游戏大家来找茬辅助工具
Sep 14 #Python
跟老齐学Python之开始真正编程
Sep 12 #Python
跟老齐学Python之??碌某?? target=
Sep 12 #Python
跟老齐学Python之用Python计算
Sep 12 #Python
跟老齐学Python之集成开发环境(IDE)
Sep 12 #Python
You might like
php中mysql模块部分功能的简单封装
2011/09/30 PHP
测试php连接mysql是否成功的代码分享
2014/01/24 PHP
php实现获取文章内容第一张图片的方法
2014/11/04 PHP
thinkphp框架下404页面设置 仅三步
2016/05/14 PHP
PHP入门教程之上传文件实例详解
2016/09/11 PHP
浅谈php://filter的妙用
2019/03/05 PHP
基于JavaScript实现继承机制之构造函数+原型链混合方式的使用详解
2013/05/07 Javascript
JS和jquery获取各种屏幕的宽度和高度的代码
2013/08/02 Javascript
javascript去除字符串左右两端的空格
2015/02/05 Javascript
iPhone手机上搭建nodejs服务器步骤方法
2015/07/06 NodeJs
js实现具有高亮显示效果的多级菜单代码
2015/09/01 Javascript
vue.js实现表格合并示例代码
2016/11/30 Javascript
Jquery实现跨域异步上传文件总结
2017/02/03 Javascript
React BootStrap用户体验框架快速上手
2018/03/06 Javascript
微信小程序使用wxParse解析html的方法教程
2018/07/06 Javascript
mock.js实现模拟生成假数据功能示例
2019/01/15 Javascript
Vue组件系列开发之模态框
2019/04/18 Javascript
python实现简单的TCP代理服务器
2014/10/08 Python
教你学会使用Python正则表达式
2017/09/07 Python
Python+tkinter使用40行代码实现计算器功能
2018/01/30 Python
Mac下Anaconda的安装和使用教程
2018/11/29 Python
Python:Numpy 求平均向量的实例
2019/06/29 Python
Python绘制二维曲线的日常应用详解
2019/12/04 Python
python飞机大战pygame碰撞检测实现方法分析
2019/12/17 Python
Django生成数据库及添加用户报错解决方案
2020/10/09 Python
Hunter Boots美国官方网站:赫特威灵顿雨靴
2018/06/16 全球购物
高级3D打印市场:Gambody
2019/12/26 全球购物
英国领先的独立酒精饮料零售商:DrinkSupermarket
2021/01/13 全球购物
开放系统互连参考模型
2016/06/29 面试题
简述安装Slackware Linux系统的过程
2012/05/08 面试题
《乌塔》教学反思
2014/02/17 职场文书
老公保证书
2015/01/17 职场文书
电力培训学习心得体会
2016/01/11 职场文书
公务员廉洁从政心得体会
2016/01/19 职场文书
高中信息技术教学反思
2016/02/16 职场文书
Nginx 502 bad gateway错误解决的九种方案及原因
2022/08/14 Servers