当前位置: 移动技术网 > IT编程>脚本编程>Python > Python入门教程2. 字符串基本操作【运算、格式化输出、常用函数】 原创

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

2018年11月03日  | 移动技术网IT编程  | 我要评论

天骄谱,汤婆子是什么,超级色的小游戏

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

1. 字符串表示方法

>>> "www.jb51.net" #字符串使用单引号(')或双引号(")表示
'www.jb51.net'
>>> 'www.jb51.net'
'www.jb51.net'
>>> "www."+"jb51"+".net" #字符串可以用“+”号连接
'www.jb51.net'
>>> "#"*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~

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

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网