[原创]Python入门教程2. 字符串基本操作【运算、格式化输出、常用函数】


Posted in Python onOctober 29, 2018

前面简单介绍了Python基本运算,这里再来简单讲述一下Python字符串相关操作

1. 字符串表示方法

>>> "3water.com" #字符串使用单引号(')或双引号(")表示
'3water.com'
>>> '3water.com'
'3water.com'
>>> "www."+"3water"+".net" #字符串可以用“+”号连接
'3water.com'
>>> "#"*10 #字符串可以使用“*”来代表重复次数
'##########'
>>> "What's your name?" #单引号中可以直接使用双引号,同理双引号中也可以直接使用单引号
"What's your name?"
>>> path = r"C:\newfile" #此处r开头表示原始字符串,里面放置的内容都是原样输出
>>> print(path)
C:\newfile

2. 字符串运算

>>> str1 = "python test"
>>> "test" in str1 #这里in用来判断元素是否在序列中
True
>>> len(str1) #这里len()函数求字符串长度
11
>>> max(str1)
'y'
>>> min(str1)
' '

3. 字符串格式化输出(这里重点讲format函数)

>>> "I like %s" % "python" #使用%进行格式化输出的经典表示方式
'I like python'
>>> dir(str) #列出字符串所有属性与方法
['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']

format(*args,**kwargs) 采用*args赋值

>>> str = "I like {1} and {2}" #这里{1}表示占位符(注意:这里得从{0}开始)
>>> str.format("python","PHP")
Traceback (most recent call last):
 File "<pyshell#5>", line 1, in <module>
  str.format("python","PHP")
IndexError: tuple index out of range
>>> str = "I like {0} and {1}"
>>> str.format("python","PHP")
'I like python and PHP'
>>> "I like {1} and {0}".format("python","PHP")
'I like PHP and python'
>>> "I like {0:20} and {1:>20}".format("python","PHP")#{0:20}表示第一个位置占据20个字符,并且左对齐。{1:>20}表示第二个位置占据20个字符,且右对齐
'I like python        and         PHP'
>>> "I like {0:.2} and {1:^10.2}".format("python","PHP")#{0:.2}表示第一个位置截取2个字符,左对齐。{1:^10.2}表示第二个位置占据10个字符,且截取2个字符,^表示居中
'I like py and   PH  '
>>> "age: {0:4d} height: {1:6.2f}".format("32","178.55") #这里应该是数字,不能用引号,否则会被当作字符串而报错!
Traceback (most recent call last):
 File "<pyshell#0>", line 1, in <module>
  "age: {0:4d} height: {1:6.2f}".format("32","178.55")
ValueError: Unknown format code 'd' for object of type 'str'
>>> "age: {0:4d} height: {1:8.2f}".format(32,178.5523154) #这里4d表示长度为4个字符的整数,右对齐。8.2f表示长度为8,保留2位小数的浮点数,右对齐。
'age:  32 height:  178.55'

format(*args,**kwargs) 采用**kwargs赋值

>>> "I like {str1} and {str2}".format(str1 = "python",str2 ="PHP")
'I like python and PHP'
>>> data = {"str1":"PHP","str2":"Python"}
>>> "I like {str1} and {str2}".format(**data)
'I like PHP and Python'

小结:对齐方式为:

左对齐
> 右对齐
^ 居中对齐

4. 字符串函数

>>> # isalpha()判断字符串是否全部为字母
>>> str1 = "I like python" #这里str1里面有空格
>>> str1.isalpha()
False
>>> str2 = "pythonDemo" #这里为全部是字母
>>> str2.isalpha()
True

>>> # split()分割字符串
>>> smp = "I like Python"
>>> smp.split(" ")
['I', 'like', 'Python']

>>> # strip()去除字符串两端空格 ,类似的,lstrip去除左侧空格,rstrip去除右侧空格
>>> strDemo = "  python demo  "
>>> strDemo.strip() #类似于php中的trim()函数
'python demo'
>>> "****python**".strip("*") #strip()函数还可删除指定字符
'python'

字符串常用函数【转换、判断】

split() 分割字符串
strip() 去除字符串两端空格
upper() 转大写
lower() 转小写
capitalize() 首字母转大写
title() 转换为标题模式(字符串中所有首字母大写,其他字母小写)
swapcase() 大写转小写,小写转大写(如:"I Like Python".swapcase() 得到i lIKE pYTHON)
isupper() 判断字母是否全部为大写
islower() 判断字母是否全部为小写
istitle() 判断是否为标题模式(字符串中所有单词首字母大写,其他小写)
isalpha() 判断字符串是否全部为字母
isdigit() 判断字符串是否全部为数字
isalnum() 判断字符串是否仅包含字母与数字
>>> #字符串拼接(对于+不适用的情况下可以使用)
>>> smp = "I like Python"
>>> c = smp.split(" ")
>>> c = "I like python".split()
>>> type(c) #这里检测类型,可以看到c为列表
<class 'list'>
>>> "*".join(c)
'I*like*Python'
>>> " ".join(c)
'I like Python'
>>> " ".join(["I","Like","python"]) #这里可以直接使用列表作为join函数的参数
'I Like python'
>>> " ".join("abcd") #也可直接使用字符串作为join函数的参数
'a b c d'

>>> # count()函数统计指定字符串出现次数
>>> "like python,learn python".count("python")
2

>>> # find()函数查找指定字符串出现位置
>>> "python Demo".find("python")
0
>>> "python Demo".find("Demo")
7

>>> # replace(old,new)函数替换指定字符串(old)为新字符串(new)
>>> "I like php".replace("php","python")
'I like python'

简单入门教程~

基本一看就懂~O(∩_∩)O~

未完待续~~欢迎讨论!!

Python 相关文章推荐
Python中文件操作简明介绍
Apr 13 Python
Python中的random()方法的使用介绍
May 15 Python
pandas 使用apply同时处理两列数据的方法
Apr 20 Python
python中yaml配置文件模块的使用详解
Apr 27 Python
python 读取文件并替换字段的实例
Jul 12 Python
详解【python】str与json类型转换
Apr 29 Python
python实现切割url得到域名、协议、主机名等各个字段的例子
Jul 25 Python
Python中的list与tuple集合区别解析
Oct 12 Python
Python是什么 Python的用处
May 26 Python
详解python tkinter 图片插入问题
Sep 03 Python
如何基于Python爬虫爬取美团酒店信息
Nov 03 Python
如何通过一篇文章了解Python中的生成器
Apr 02 Python
pycharm执行python时,填写参数的方法
Oct 29 #Python
解决Pycharm下面出现No R interpreter defined的问题
Oct 29 #Python
解决Pycharm运行时找不到文件的问题
Oct 29 #Python
解决Mac下首次安装pycharm无project interpreter的问题
Oct 29 #Python
解决pycharm运行时interpreter为空的问题
Oct 29 #Python
在Pycharm中项目解释器与环境变量的设置方法
Oct 29 #Python
mac PyCharm添加Python解释器及添加package路径的方法
Oct 29 #Python
You might like
cmd下运行php脚本
2008/11/25 PHP
laravel excel 上传文件保存到本地服务器功能
2019/11/14 PHP
php生成随机数/生成随机字符串的方法小结【5种方法】
2020/05/27 PHP
用javascript动态调整iframe高度的方法
2007/03/06 Javascript
jquery imgareaselect 使用利用js与程序结合实现图片剪切
2009/07/30 Javascript
也说JavaScript中String类的replace函数
2011/09/22 Javascript
关于URL中的特殊符号使用介绍
2011/11/03 Javascript
ASP.NET jQuery 实例2 (表单中使用回车在TextBox之间向下移动)
2012/01/13 Javascript
详解JavaScript中数组的相关知识
2015/07/29 Javascript
javascript实现显示和隐藏div方法汇总
2015/08/14 Javascript
JavaScrpt判断一个数是否是质数的实例代码
2017/06/11 Javascript
JS简单实现滑动加载数据的方法示例
2017/10/18 Javascript
vue树形结构获取键值的方法示例
2018/06/21 Javascript
浅谈Vue组件及组件的注册方法
2018/08/24 Javascript
JavaScript实现数字前补“0”的五种方法示例
2019/01/03 Javascript
解决微信小程序中转换时间格式IOS不兼容的问题
2019/02/15 Javascript
详解vue中axios请求的封装
2019/04/08 Javascript
微信小程序批量监听输入框对按钮样式进行控制的实现代码
2019/10/12 Javascript
vue 手机物理监听键+退出提示代码
2020/09/09 Javascript
[01:33]PWL开团时刻DAY2-开雾与反开雾
2020/10/31 DOTA
浅谈python中的__init__、__new__和__call__方法
2017/07/18 Python
python paramiko远程服务器终端操作过程解析
2019/12/14 Python
pycharm实现在虚拟环境中引入别人的项目
2020/03/09 Python
html5绘制时钟动画
2014/12/15 HTML / CSS
html5 实现客户端验证上传文件的大小(简单实例)
2016/05/15 HTML / CSS
阿玛尼意大利官网:Armani意大利
2018/10/30 全球购物
英国第一的市场和亚马逊替代品:OnBuy
2019/03/16 全球购物
Servlet的生命周期
2013/08/25 面试题
就业意向书范文
2014/04/01 职场文书
校车安全责任书
2014/08/25 职场文书
党支部先进事迹材料
2014/12/24 职场文书
八一建军节慰问信
2015/02/14 职场文书
2015暑期社会实践调查报告
2015/07/14 职场文书
少先队中队工作总结
2015/08/14 职场文书
《艾尔登法环》Boss腐烂树灵很有可能是《黑暗之魂3》的一个废案
2022/04/11 其他游戏
vscode内网访问服务器的方法
2022/06/28 Servers