Python基础 字符串的魔法
capitalize(self)
返回值:将字符串的第一个首字母变成大写,其他字母变小写
s = 'hello World' ss = s.capitalize() print(ss)
Hello world
casefold(self)
返回值:字符串内所有字符大写变小写。魔法范围比.lower()大。
s = 'Are you Ok ?' ss = s.casefold() print(ss)
are you ok ?
lower(self)
返回值:字符串内所有字符大写变小写。魔法范围比casefold()小
s = 'Are you Ok ?' ss = s.lower() print(ss)
are you ok ?
Casefolding is similar to lowercasing but more aggressive because it is intended to remove all case distinctions in a string. For example, the German lowercase letter 'ß' is equivalent to "ss". Since it is already lowercase, lower() would do nothing to 'ß'; casefold() converts it to "ss".
expandtabs(tabsize
=
8
)
方法把字符串中的 tab 符号('\t')转为空格,默认的空格数 tabsize 是 8,也可以指定其他数值。
下例中转换方式为,从左向右数5个字符,没有\t就继续数5个 例如 username\tpasswd....遇到ame\t的时候就换成2个空格再继续数(5-3)
s = 'username\tpasswd\temail\nzhuge\t123\tzhuge@sg.com\nzhuge\t123\tzhuge@sg.com\nzhuge\t123\tzhuge@sg.com\n' ss = s.expandtabs(5) print(ss)
username passwd email zhuge 123 zhuge@sg.com zhuge 123 zhuge@sg.com zhuge 123 zhuge@sg.com
join(sequence)
方法用于将序列中的元素以指定的字符连接生成一个新的字符串。
参数:sequence -- 要连接的元素序列。str1.join(str2)用str1链接str2序列
s = 'hello' ss = '-'.join(s) print(ss)
h-e-l-l-o
split([sep[, num=maxsplit]])
通过指定分隔符(sep)对字符串进行切片,如果参数(num) 有指定值n,则仅切n次,num默认为最大限度切割。
s = 'i love you, i l o v e y o u' ss = s.split() sss = s.split(' ', 1) print(ss) print(sss) l = '1+2+3+4+5' ll = l.split('+', 3) print(ll)
['i', 'love', 'you,', 'i', 'l', 'o', 'v', 'e', 'y', 'o', 'u'] ['i', 'love you, i l o v e y o u'] ['1', '2', '3', '4+5']
find(str,[beg=0,[end=len(string)]])
查找子串str在字符串的开始位置。
从下标为beg(默认为0)的位置开始找,直到索引为end(默认到结尾)处,如果找到,则返回此子串对应的索引,找不到就返回-1。
s = 'abcdefabc' ss = s.find('c') sss = s.find('c', 3) ssss = s.find('h') print(ss), print(sss), print(ssss)
2 8 -1
strip([chars])
方法用于移除字符串头尾指定的字符(chars)(默认为空格)。
扩展:lstrip() rstrip()可用于删除左边/右边的指定字符。
s = '-----hello world--' ss = s.strip('-') sss = s.lstrip('-') print(ss), print(sss
hello world hello world--
upper()
返回值:将字符串中的小写字母转为大写字母。
s = 'hello' ss = s.upper() print(ss)
HELLO
lower()
返回值:与upper()相反地,将字符串中所有大写字符转换为小写。
s = 'HELLO' ss = s.lower() print(ss)
hello
replace(old, new[, max])
方法把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。
s = 'abcdabcdabcd' ss = s.replace('abc', 'e') sss = s.replace('abc', 'e', 2) print(ss), print(sss)
ededed ededabcd
isdigit()
方法检测字符串是否只由数字组成,如果字符串只包含数字,罗马数字)则返回 True 否则返回 False.
# isdigit() # True: Unicode数字,byte数字(单字节),全角数字(双字节),罗马数字 # False: 汉字数字 # Error: 无 # # isdecimal() # True: Unicode数字,,全角数字(双字节) # False: 罗马数字,汉字数字 # Error: byte数字(单字节) # # isnumeric() # True: Unicode数字,全角数字(双字节),罗马数字,汉字数字 # False: 无 # Error: byte数字(单字节)
isalpha()
字符串至少有一个字符并且所有字符都是字母则返回 True,否则返回 False
Python基础 字符串的魔法的更多相关文章
- python基础——字符串和编码
python基础——字符串和编码 字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用 ...
- Python 基础-> 字符串,数字,变量
Python 基础:字符串,数字,变量 1. 字符串 (信息的一种表达方式) a. 使用引号创建字符串 b. 单引号,双引号,三引号: ', ", ''', ""&quo ...
- Python基础-字符串格式化_百分号方式_format方式
Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...
- Python 基础 字符串拼接 + if while for循环
注释单行注释 #多行注释 ''' 三个单引号或者三个双引号 """ ''' 用三引号引住可以多行赋值 用户交互 input 字符串拼接 + ""%( ...
- Python基础——字符串
Python版本:3.6.2 操作系统:Windows 作者:SmallWZQ 在Python中,字符串也是一种数据类型.相比其它数据类型,字符串算是比较复杂的.为何呢?因为字符串不仅包含英文字母 ...
- python基础-字符串(6)
一.引言 当打来浏览器登录某些网站的时候,需要输入密码,浏览器把密码传送到服务器后,服务器会对密码进行验证,其验证过程是把之前保存的密码与本次传递过去的密码进行对比,如果相等,那么就认为密码正确,否则 ...
- python基础——字符串、编码、格式化
1.三种编码:ascii Unicode utf8 2.字符串和编码数字的两个函数:ord(字符转数字ord(‘A’)=65)和 chr(数字转字符chr(65)=A) 3.bytes存储编码,记住两 ...
- [Python] Python基础字符串
Python的语法采用缩进的方式,一般使用四个空格,并且是大小写敏感的 字符编码 计算机只能处理数字,如果要处理文本,必须先把文本转换成数字才能处理 采用8个比特(bit)作为一个字节(byte) 一 ...
- Python基础(字符串和编码)
字符编码 我们已经讲过了,字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题. 因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特 ...
随机推荐
- LA 2678 Subsequence
有一个正整数序列,求最短的子序列使得其和大于等于S,并输出最短的长度. 用数组b[i]存放序列的前i项和,所以b[i]是递增的. 遍历终点j,然后在区间[0, j)里二分查找满足b[j]-b[i]≥S ...
- iPad中控制器view初始的width和height
1> 规律 * width 是宽高中最小的那个值 * height 是宽高中最大的那个值 2> 举例(比如窗口根控制器的view,有状态栏的情况下) * 横屏 width = 748,h ...
- hibernate3和spring整合的一些方式
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...
- 深入理解ob_flush/flush
ob_flush/flush在手册中的描述, 都是刷新输出缓冲区, 并且还需要配套使用, 所以会导致很多人迷惑… 其实, 他们俩的操作对象不同, 有些情况下, flush根本不做什么事情.. ob_* ...
- XE7 - 升级及初步使用
春节没抢到回家的票,正好有时间把Delphi2010升级到了XE7. 用了快一个月了,今天算是补记. 安装包用了lsuper大侠整理的lsuper.XE7.Update1.v10.1.拜谢!比较顺利的 ...
- codeforce Codeforces Round #201 (Div. 2)
cf 上的一道好题: 首先发现能生成所有数字-N 判断奇偶 就行了,但想不出来,如何生成所有数字,解题报告 说是 所有数字的中最大的那个数/所有数字的最小公倍数,好像有道理:纪念纪念: #incl ...
- 动态加载 移除js file
动态加载.移除.替换js/css文件 stylesheetjavascriptcssfunctionnull <script language="javascript"> ...
- Linux makefile教程之更新函数库文件十[转]
使用make更新函数库文件 ——————————— 函数库文件也就是对Object文件(程序编译的中间文件)的打包文件.在Unix下,一般是由命令"ar"来完成打包工作. 一.函数 ...
- myeclipse10添加jQuery自动提示
首先先要在装上spket插件,这个网上有好多教程,我就不详细说了,主要说一下后面的设置,因为我发现我按照网上的装完也设置完没办法使用自动提示功能,以下是我根据前辈的经验然后自己摸索出来的: 选中所建的 ...
- [Papers]NSE, $u$, Lorentz space [Sohr, JEE, 2001]
$$\bex \bbu\in L^{p,r}(0,T;L^{q,\infty}(\bbR^3)),\quad\frac{2}{p}+\frac{3}{q}=1,\quad 3<q<\inf ...