Python—字符串的操作
字符串的操作
- 变量:
- 变量只能是 字母,数字或下划线的任意组合,但首个字符不能为数字,且不能有空格
- 以下关键字不能声明为变量:
- and ,as, assert, break ,class ,continue ,def ,del ,elif ,else ,except
- exec ,finally ,for, from ,golbal, if ,import ,in ,is ,lamda ,not ,or, pass, print ,raise
- return, try ,while ,with ,yield
变量的命名
字符串都是可哈希的(不可变),因此字符串的操作都是生成新的字符串,不是修改原始值。但是列表是可变的,因此列表的方法都是直接修改原始值。
方法按字母索引:
1. C-F
- >>> name = "my name is gkxxxx"
- 2 >>> name.capitalize()
- 'My name is gkxxxx'
- 4 >>> name.casefold()
- 'my name is gkxxxx'
- >>> #casefold 与lower很像,不过lower只针对ASCII码的字母
- 7 >>> name.center(10,"-")
- 'my name is gkxxxx'
- >>> name.center(40,"-")
- '-----------my name is gkxxxx------------'
- >>> #输出40个字符,若name不足,用“-”补足,其中name里的空格也算字符数
- 12 >>> name.endswith("x") # 'gkxpanda'.startswith('x',2,5) ---> 对字符串切片2,5(顾头不顾尾),判断是否以x开头
- True # 对于判断字符串的开头结尾,可以看成判断 str[0],str[-1],因为字符串也有index
- >>> name.endswith("aa")
- False
- >>> #判断字符串结尾,正确返回true,比如是否以.com结尾,不能为空,会报错。
- 17 >>> name.expandtabs(tabsize=30)
- 'my name is gkxxxx'
- >>> #假如name中有“\t”,则把扩大tap的字符数。 ‘g\tkx’如果默认,则是\t往前补8位,比如 此处字母只有1个g,会再补7个空格
- 20 >>> name.find("name") #找不到返回 -1
- 3
- >>> #找到name的起始位置,Ps:字符串也可以切片,如下:
- >>> name[name.find("name"):9]
- 'name i'
- >>> name[name.find("name"):7]
- 'name'
- >>> name2 = "my name is {name_2}"
- 28 >>> name2.format(name_2=name)
- 'my name is my name is gkxxxx'
- >>> #format 格式化输出
- 31 >>> name2.format_map({'name_2':'gkxxx'})
- 'my name is gkxxx'
- >>> #format_map 也是格式化输出,不过用的是字典,很少用就是了
- #format
- >>> name = ''
- >>> age = 1
- >>> a = '{},{}'.format(name,age)
- >>> a
- '1,1'
字符串中有多少大括号,foamat后面就可以跟几个
2. i
- 1 >>> name.index('m')
- 0
- >>> print('ab23'.isalnum)
- <built-in method isalnum of str object at 0x000001F2A409C228>
- >>> #包含所有的英文字符和1~9,返回true,如果有特殊字符就返回false
- 6 >>> name.isalpha()
- False
- >>> name_3 = 'abc'
- >>> name_3.isalpha()
- True
- 11 >>> name.isdecimal()
- False
- >>> #是否是十进制
- 14 >>> name.isdigit()
- False
- >>> #是否是数字
- 17 >>> name.isidentifier() #判断是不是一个合法的标识符(变量名)
- False
- >>> name_3.isidentifier()
- True
- 21 >>> name_3.islower()
- True
- >>> #判断是不是小写
- 24 >>> print('33'.isnumeric())
- True
- >>> #与 .isdigit差不多
- >>> #带小数返回false
- >>> name_4 = 'My Name Is Gkxx'
- 29 >>> name_4.istitle() #判断是否开头都是大写
- True
- 31 >>> name_4.isprintable() #如果是字符串不用考虑是否可以打印,类似linux ttyfile drive file不能打印
- True
- 33 >>> name_4.isupper()
- False
- >>>
3. J~Z
- >>> print('+'.join(['','','','','']))
- 1+2+3+4+5
- 3 >>> print('+'.join(['1','2','3','4','5'])) #emmmm,如结果所示
- 1+2+3+4+5
- 5 >>> name.ljust(40,'*') #同center,左边字符串不足位数,自动补位
- 'my name is gkxxxx***********************'
- 7 >>> name.rjust(40,'-') #同center,ljust 右边字符串不足位数,自动补位
- '-----------------------my name is gkxxxx'
- 9 >>> name.lower() #全小写,做验证码登陆可以用f
- 'my name is gkxxxx'
- 11 >>> name.upper() #全大写
- 'MY NAME IS GKXXXX'
- >>> name_5= ' gkx '
- 14 >>> name_5.lstrip()
- 'gkx '
- 16 >>> name_5.rstrip()
- ' gkx'
- 18 >>> name_5.strip() #'sdgx@sd f#'.strip(' @#') ---> 'sdgx@sd f'只要是位于首尾的特殊字符,空格,数字,直接写在.strip()的参数里,都可以删除,但是中间的就不会删
- 'gkx'
- #strip的坑:
- >>> a = 'aaa****ab'
- >>> a.strip('ab')
- >>'****' #用字母去做strip的时候,会去掉所有的字母
- >>>
- 21 >>> ser = str.maketrans('abcdefg','1234567')
- 22 >>> text = 'c is after a'
- 23 >>> text.translate(ser)
- 24 '3 is 16t5r 1'
- 25 >>> # maketrans可以设置一一对应的字符,translate可以翻译maketrans,从而达到加密效果
- >>>
- >>> name_6 = 'my name is gkx'
- 28 >>> name_6.partition(" ")
- ('my', ' ', 'name is gkx')
- >>> #根据字符串已有的分隔符,把字符串分割成tuple
- >>>
- >>> name.replace('x','WW')
- 'my name is gkWWWWWWWW'
- >>> name.replace('m','M',0)
- 'my name is gkxxxx'
- 36 >>> name.replace('x','WW',1) #不写1则替换所有的X为WW,写了就只替换第一处x
- 'my name is gkWWxxx'
- >>> #对字符串的值进行替换,最后一个数字表示,想替换的个数
- >>>
- 40 >>> name.rfind('y') #同find,不过find默认找到最左边的值的index,rfind默认找到最右边的值的index
- 1
- >>>
- 43 >>> name.split(' ') #根据字符串已有的分隔符,把字符串分割成列表,此处分隔符为空格
- ['my', 'name', 'is', 'gkxxxx']
- "aa_bb_cc".rsplit('_',1) #从右边开始分割,只分割一次
>>> ['aa_bb','cc']- >>> name_7 = '1+2\n+3'
- 46 >>> name_7.splitlines()
- ['1+2', '+3']
- >>> #同split ,默认是用\n换行符,分割
- >>>
- >>> name_8 = 'MY name IS gkx'
- 51 >>> name_8.swapcase() #转换大小写
- 'my NAME is GKX'
- 53 >>> name_8.title() #首字母大写,每个隔开的(空格,特殊字符,数字)单词首字母大写
- 'My Name Is Gkx'
- 55 >>> name_8.zfill(50) #自动用0补位
- '000000000000000000000000000000000000MY name IS gkx'
- >>>
Python—字符串的操作的更多相关文章
- Python字符串切片操作知识详解
Python字符串切片操作知识详解 这篇文章主要介绍了Python中字符串切片操作 的相关资料,需要的朋友可以参考下 一:取字符串中第几个字符 print "Hello"[0] 表 ...
- Python 字符串大小写操作
#coding=utf-8 #python中字符串的操作 # 字符串的大小写 s='hello_wOrld_oF_you' upper_str = s.upper() print('全部大写: ',u ...
- Python字符串的操作
字符串常用操作 name = "my name is alex" # 注: python中方法名前后带下划线的是供内部使用的方法, 如方法__dir__(). 这种方法是不对外提供 ...
- day7 python字符串的操作及方法
1.字符串 1.1 字符串的操作 # 1.字符串的拼接 strvar = "我爱" + "中国" # 2.字符串的重复 strvar = "今天下午2 ...
- python字符串的操作(去掉空格strip(),切片,查找,连接join(),分割split(),转换首字母大写, 转换字母大小写...)
#可变变量:list, 字典#不可变变量:元祖,字符串字符串的操作(去掉空格, 切片, 查找, 连接, 分割, 转换首字母大写, 转换字母大小写, 判断是否是数字字母, 成员运算符(in / not ...
- python字符串常见操作
字符串常见操作 如有字符串mystr = 'hello world itcast and itcastcpp',以下是常见的操作 <1>find 检测 str 是否包含在 mystr中,如 ...
- 初学Python——字符串相关操作
基本字符串操作 Pyhton中字符串的格式化输出在前面已经总结了,接下来介绍一些常用的字符串操作 先定义一个字符变量,以下的操作都以此为例: name=" my name is china ...
- Python字符串基础操作
==============字符串======== >>> s1='www.baidu.com' >>> type(s1) <type 'str'> & ...
- Python 字符串相关操作
# 1 * 重复输出字符串 print('hello'*2) # 2 [] ,[:] 通过索引获取字符串中字符,这里和列表的切片操作是相同的,具体内容见列表 print('helloworld'[2: ...
随机推荐
- 判断是否滚动加载结束 用一个公共变量isScroll来控制
如果还没达到最大页数,isScroll就一直是不变,ajax正常进行.如果达到最大页数,就不执行ajax操作了...
- js回溯法计算最佳旅行线路
假如有 A,B,C,D四个城市,他们之间的距离用 G[V][E] 表示,为 无穷大,则表示两座城市不相通 现在从计算从某一个城市出发,把所有的城市不重复旅行一次,最短路径 其中G为: (Infinit ...
- 大数据小视角3:CarbonData,来自华为的中国力量
连续两篇文章都聊了不同的存储格式,这篇我们继续深入来看看在存储格式的演变之上有什么新的"黑科技".华为公司在2016年开源了类parquet的列存格式:CarbonData,并且贡 ...
- nuxtjs中使用axios
最近使用nuxtjs服务端渲染框架,在异步请求时遇到两个问题,一是怎么使用axios, 二是怎么在asyncData方法中使用axios 当使用脚手架create nuxt-app创建项目时,会提示是 ...
- Oracle 26表空间的管理
一.查看用户表空间 熟悉与表空间相关的数据字典 查看用户的表空间 相关的数据字典:(用于查询数据库信息的数据库表)dba_tablespaces (管理员级别的表空间的描述信息) User_table ...
- 查看容器IP地址
我们可以通过以下命令查看容器运行的各种数据 docker inspect 容器名称(容器ID) 也可以直接执行下面的命令直接输出IP地址 docker inspect --format='{{.Ne ...
- C# 获取 mp3文件信息【包括:文件大小、歌曲长度、歌手、专辑】
C# 获取 mp3文件信息[包括:文件大小.歌曲长度.歌手.专辑] 第一种方式:[代码已验证] // http://bbs.csdn.net/topics/390392612 string fil ...
- Linux文件检索
title: Linux文件检索 date: 2017-12-11 19:03:01 tags: linux categories: linux whereis 只要执行 whereis ls 就可以 ...
- nginx根据CPU配置多线程运行
转自:Nginx使用教程(二):Nginx配置性能优化之worker配置 配置Nginx workers <br\>NGINX根据指定的配置运行固定数量的工作进程. 这些工作进程负责处理所 ...
- PyQT的安装和配置
安装pythonQt 操作系统:Windows 7 64位 python版本:3.4 PyQt5使用PIP安装 测试是否安装成功 导入PyQt5 没报错说明安装成功 pythonQt Designer ...