Day 02 字符串
2018-01-18 16:38
239 查看
1.字符串的定义:单引号,双引号,三引号都可以定义字符串。
a=’aaa’;b=”bbb”;
c=’’’ccc’’’;
2.转义字符:\t制表符 \n换行符
字符串截取:切片[] [:] [::]
例如:str=”984011772@qq.com”
print(str[0]); 获取单个字符,0为第一位,从0开始
print(str[len(str)-1]); 用数组长度函数方法获取字符串最后一位
print(str[-1]); 获取区间字符,包括前一个不包括后面的数字。
print(str[1:5]); 截取1到5-1小标的字符串
print(str[:5]); 截取1到5-1小标的字符串
print(str[:]); 打印所有
print(str[5:]); 从5开始到最后
print(str[-5:]); 从-5开始到最后
print(str[::2]); 每隔2个打印一个字符
print(str[-1:0:-1]); 倒序
print(str[::-1]); 倒序
注:[x:y:z] 从x到y-1,z是步长,z默认是1,z=x+y,当xy均为负数时,z 也必须是负数。
3.字符串的一些用法
in:判断是否在这些字符串中存在,返回bool布尔类型,true和 false
email=”984011772@qq.com”;
print(“at” in email); 判断”at”在不在email中,返回false
not in: 判断是否不在这些字符串中存在,返回bool布尔类型,true和 false
print(“qq” not in email); 判断”qq”在不在email中,返回true
r/R:原样输出字符串,如一些特殊字符串”\n”,”\t”,R的使用不区分大小写
print(r”\t 代表一个制表符 \n 换行符”);
4.字符串格式化
(1) %s字符 %d整数 %f 浮点数 %.xf保留x位小数,四舍五入
print(‘name:%s’%’tom’); 输出name:tom
print(‘name:%s age:%d money:%.2f’%(’tom’,20,90.456))
输出为name:tom age:20 money:90.45
注:当参数为两个的时候要加小括号
(2) 格式化.format()
print(‘{}’.format(“hello”));
print(“姓名:{name},年龄:{age}”.format(name=”张三,age=20”));
print(“姓名:{0},年龄:{1}”.format(“张三”,20));
5.字符串的内置操作函数
mystr=”hello”;
6.字符串长度: len( )
print(len(mystr)); 输出为5
7.找区间内某字符出现的次数:count( )
print(mystr.count(sub,start=0,end=len(mystr)));
参数sub为要寻找的元素,参数start=0时即从0开始,即通过下标寻找,参数end为到哪结束
8.将字符串的第一个字符转换成大写:capitalize( )
print(mystr.capitalize()); 输出为Hello #没有参数
9.将每天一个单词首字母大写:title( )
str=”hello world”;
print(str.title()); 输出为Hello World,注意单词之间要有空格 #没有参数
10.找字符串,返回找到字符串的下标,返回的是第一次出现的位置:find( )
print(mystr.find(sub,start=0,end=len(str)));
参数sub为要寻找的元素,参数start=0为从哪开始找,从0开始,即通过下标寻找,参数end为从哪结束
注:能找到返回值为非负数,不能找到返回值是-1
11.从右开始找:rfind( )
print(mystr.rfind(sub,start=0,end=len(str))); 参数同上
12.找字符串,返回找到字符串的下标:index( )
print(mystr.index(sub,start=0,end=len(str)));
参数sub为要寻找的元素,参数start=0为从哪开始找,从0开始,即通过下标寻找,参数end为从哪结束
注:能找到返回值为非负数,不能找到抛异常
13.从右开始找:rindex( )
print(mystr.rindex(sub,start=0,end=len(str))); 参数同上
14.替换:replace( )
print(mystr.replace(“hello”,”nihao”));
把hello替换成nihao,但是原字符串不会被改变。
15.拆分:split( )
print(mystr.split(x,y));
以x为分割,分割y次
1.x会被去除;
2.如果y超过能分割的次数,会执行能分割的最大次数
注:如果split()没有参数,就是通过\t和空格进行拆分,并返回数组
16.从xx开始:startswith( )
print(mystr.startswith(x,y,z)); 判断是不是以x开头,在区间y到z中间找,并返回true或false
17.从xx结尾:endswith( )
print(mystr.endswith(x,y,z)); 判断是不是以x结束,在区间y到z中间找,并返回true或false
18.忽略大小写:lower() 转化为小写 upper() 转化为大写
print(mystr.lower()); #转化为小写
Print(mystr.upper()); #转化为大写
19.对齐:ljust 左对齐 rjust 右对齐 center 居中对齐
print(mystr.ljust(x,y)); 左对齐
print(mystr.rjust(x,y)); 右对齐
print(mystr.center(x,y)); 居中对齐
注:一共有x个字符,没有字符的地方用y代替
20.去除所有空格:strip( )
print(mystr.strip());
21.去除左侧空格:lstrip( )
print(mystr.lstrip());
22.去除右侧空格:rstrip( )
print(mystr.rstrip());
23.以字符为节点进行拆分:partition( )
print(mystr.partition(x)); 以x为节点进行拆分,返回头部、分隔符x,尾部三部分,返回三个元组,以第一个分隔符进行分割
24.按照换行符进行拆分:splitlines( )
print(mystr.splitlines());
注:如果字符串中包含\n,结果默认为false,返回值不包含\n,如果想保留\n,则需要设置true。
例如:print(mystr.splitlines(true))
25.判断字符串是不是字母或文字,返回true或false:isalpha( )
print(mystr.isalpha());
26.判断字符串是不是数字,返回true或false:isdigit( )
print(mystr.isdigit());
27.判断字符串是不是数字、字母或文字,返回true或false:isalnum( )
print(mystr.isalnum());
28.将列表组成新的字符串:join( )
print(mystr.join());
相关文章推荐
- Java基础知识点整理Day_02
- day-02 原码、反码、补码详解
- 02-Python的核心数据类型-数字、字符串
- Linux_day_02作业
- day_02
- Note-02-字符串处理
- JAVA SE — Day 02
- .Net程序员之Python基础教程学习----字符串的使用 [Second Day]
- 【走马观花】SQL SERVER 2012 新增函数详解-02.字符串函数FORMAT
- Day_02_数据库的简单连接和添加数据
- iptables学习day-02
- Oracle篇--02 Oracle字符串操作、数值操作、日期操作
- MFC学习02--在应用类中定义一个字符串,在视图显示
- 【C语言基础】-02字符串和格式化输入/输出
- java学习之旅14--运算符_02_字符串连接_三元运算符_优先级问题
- DAY_02 HTML小白学习笔记
- day_01至day_02
- IPHONE 开发 7 -- Object C 02 字符串NSString 与 char* ,字符串的遍历,字符串的比较,截取与大小写改变,搜索字符串与替换字符串
- 黑马程序员————字符串缓冲区 & 其他常用对象(day15)
- day-03-02