赞
踩
定义:字符串是一个类(<class'str'>),用于表示,存储,操作一串字符。
字符串类属于python最基本的数据结构:序列。序列中的每一个元素都有一个索引与之对应,字符串可以看作是字符的序列。
目录
python 可以用单引号,双引号,三引号创建字符串,并且效果相同,但是Python 中单引号 ' 和双引号 " 使用完全相同。使用三引号(''' 或 """)可以指定一个多行字符串。
- a = 'hello python'
- a = "hello python"
- a = """hello python"""
其这么多种类型 主要是为了解决双引号里有引用这种问题
- str1 = “Hello world!”
- print(str1[0]) #索引首字符
- print(str1[-1]) #索引末字符
- print(str1[2]) #索引第三个字符
- print(str1[-2]) #索引倒数第二个字符
运行结果如下:
但是字符串类跟数值类一样,都是不可变对象,向字符串索引位置写入新的值,会引发错误。
而当把变量关联到新的字符串对象时,python解释器会创建一个新的字符串对象,然后把这个新的字符串对象关联到变量上,但这并不是字符串对象可改变,而是字符串的指向变了
2. 使用切片运算符:[ 起点(start):终点(end):步长(step) ]可以对字符串进行切片。切片其实就是索引字符串的一个子集
字符串的常见操作: 获取长度:len 查找内容:find,index,rfind,rindex 判断:startswith,endwith,isalpha,isdigit,isalnum,isupper 计算出现次数:count 替换内容:replace 切割字符串:split,rsplit,splitlines,partition, 修改大小写:capitalize,title,upper,lower 空格处理:ljust,rjust,center,upper,lower 字符串拼接:join
以下列举几个方法的用途:
1,find:找查元素位置 查找字符串片段在字符串中的下标位置,从前往后找,返回的是第一个被找到字符串片段的起始位置 第一个参数:要查找的字符串片段 第二个参数:要查找的起始点 第三个参数:要找到的终止位置-1 如果查找的字符串存在多个,查找结果是第一个出现的字符串下标 找不到就返回-1 2,count :统计字符串片段在字符串中出现的次数 找不到就返回0 3,replace:替换指定的字符串片段 参数1:要替换的字符串片段 参数2:替换之后的字符串片段 参数3:替换的次数,从前往后替换 4,upper :将小写字母转化为大写字母 5,lower : 将大写字母转化为小写字母 6,split : 指定分割点对字符串进行分割 参数一 : 分割点 参数二 : 分割的次数(默认找到所有的分割点进行分割) 7,strip 去除字符串首尾的空格
一个用字符串产生随机文件名的demo:
- import random
- s = 'skdhcioeudhsklLKEHDILC'
- filename =''
- for i in range (6):
- index=random.randint(0,len(s)-1)
- filename+=s[index]
- print(filename)
字符串循环时不需要range:
- for i in range(10): #数字类型进行循环
- print(i)
- s= "g3uge83ki1dy83y1hix2831ho"
- for i in s: #字符串不需要range
- print(i)
- num=0
- for i in s: #字符串输出数字
- if i.isdigit():
- num+=int(i)
- print(num)
一些方法的注意事项:
find 与 index 的区别: index找不到不会返回-1而是会报错,find可以查找多个字符 count 字符串里的东西出现的次数,len 计算字符串长度 replace 没写次数就默认替换所有的 split 里面的参数是分隔符,返回的结果是一个列表,没写次数就默认替换所有的,同理rsplit title 将每个单词的首字母大写,capitalize将第一个单词的首字母大写 s.split('o')#将字符串,用规定字符'o'进行分割,得到一个列表 s.strip('6')不写默认去除首尾空格,rstrip去除右边的空格,lstrip去除左边的空格 s1.replace(' ','')#去除中间字符 ljust,rjust,center添加空格,控制其左右对齐方式
Python 支持格式化字符串的输出 。尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中。
常用的有:
%c | 格式化字符及其ASCII码 |
%s | 格式化字符串 |
%d | 格式化整数 |
%u | 格式化无符号整型 |
%o | 格式化无符号八进制数 |
%x | 格式化无符号十六进制数 |
%X | 格式化无符号十六进制数(大写) |
%f | 格式化浮点数字,可指定小数点后的精度 |
还能用内嵌format方法格式化输出:
1、格式化小数长度(会四舍五入) :.2f 2、 将小数按百分比的形式显示 :.2%
- print ("我叫 %s 今年 %d 岁!" % ('小明', 10))
-
- name = "qi"
- age =18
- result = "{0}今年{1}岁了,我也{1}岁了".format(name,age) #数字填充,从零开始计数,变量名形式,format的参数必须是关键字参数
-
- print("今天的橘子{}钱一斤".format(w))
- print("今天的橘子{}钱一斤".format(w,x))
- print("今天的橘子{1:.2f}钱一斤".format(w,x))
- print("今天的橘子{:.3f}钱一斤".format(w))
- print("今天的橘子{:.2%}钱一斤".format(w,x))
- print("今天的橘子{:.2%}钱一斤".format(0.123412213))
-
- """
- 今天的橘子3.7389239钱一斤
- 今天的橘子3.7389239钱一斤
- 今天的橘子45.53钱一斤
- 今天的橘子3.739钱一斤
- 今天的橘子373.89%钱一斤
- 今天的橘子12.34%钱一斤
- """
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。