Python之字符串
●字符串
符号“+”:字符串之间的拼接:
如:
str1='good good study , day day up!'
str2="好好学习,天天向上"
print(str1+":"+str2)
输出:good good study , day day up! : 好好学习,天天向上
注意:字符串不允许与其它类型的数据类型进行直接的拼接。例如整数类型的数据就不能直接与字符串类型的数据直接进行拼接。但是可以运用str()函数将整数类型的数据转换为字符串类型的数据,再进行相加。如
str1='Scott'
interage=123
print(str1+str(interage))
计算字符串的长度:
在Python中,数字、英文、小数点、下划线和空格占一个字节;一个汉字可能占2~4个字节,当然占几个字节还取决于采用的编码。汉字在
GBK/GB2312编码中占2个字节,在UTF-8/unicode编码中一般占用3~4个字节。字符串长度结算可以调用len(string)函数。
str1='人生苦短,我用Python!'
print(len(str1))
输出:14
这里是默认的情况下,通过len()计算的长度是不区分英文和数字、汉字的所有字符按一个字符计算。如果需要获取实际的字符串所占的字节数,即如果采用UTF-8编码,汉字占3个字节。如果采用GBK或者
是GB2312时,汉字占2个字节,这时可以用encode()方法(此方法为汉字占3个字节)。str1='人生苦短,我用Python!'
print(de()))
输出:28
采用GBK编码获取长度(占2个字节):
str1='人生苦短,我用Python!'
print(de('gbk')))
输出:21
截取字符串:
字符串也属于序列(如同列表一样拥有下标),截取字符串可以通过切片的方式(string[start:end:step])
String:字符串
Start:截取的开始位置
End:截取结束的位置
Step:截取的步长
截取还可以有string[start:]/string[:start]/string[int]/string[int:int]不确定步长的情况下,默认步长是1。
如下:
str1='人生苦短,我用Python!'
print(str1[:])#从第一个字符开始截取
print(str1[1:])#从第二个字符开始截取
print(str1[:3])#从左边第三个字符开始截取
print(str1[2:4])#截取二个到第三个字符
输出:
人生苦短,我用Python!
生苦短,我用Python!
人生苦
苦短
注意:此时要注意下标是否溢出,否则会抛出异常。
练习:输入身份证,输出出生年月日。
python的字符串是什么str_1=input("请输入你的身份证号码:"+'\n')
if len(str_1)==18:
print("您的出生日期是:"+str_1[6:10]+"年"+str_1[10:12],'月',str_1[12:14],'日')
else:
print("身份证号输入错误!请从新输入!")
输出:
请输入你的身份证号码:
342501199920125824
您的出生日期是:1999年20 月12 日
分割合并字符串:
分割、合并可以看作是一对互逆操作。运用split(sep,maxsplit)方法进行分割(sep:指定以什么符号或者字符串进行分割,后者分割的次数,则生成的列表中元素的个数为maxsplit+1)。例如:
str_my='想个好一点的工作!好难啊!好难啊!'
list1=str_my.split()
list2=str_my.split('!')
list2=str_my.split('!',2)
print(str(list1))
print(str(list2))
print(str(list3))
输出:
['想', '', '个', '好一点的工作!', '好难啊!好难啊!']
['想个好一点的工作', ' 好难啊', '好难啊', '']
['想个好一点的工作', ' 好难啊', '好难啊!']
注意:split()方法中,如果不指定前面的分隔符号,则后面的分割数不能指定。对待空格符无论是连续几个空格,都只分割一次。例如上面的例子“个”和“好”之间有两个空格,但是只分割一次。如若分割后后面没有元素了,则以空元素代替。
合并字符串:
合并字符串可以用join()方法,str_new=string.join(iterable)(str_new:为新
生成的字符串,string:指定用来连接的字符,iterable:可迭代对象)。如:list_str=['I','am','tried','!']
str_new=" ".join(list_str)
print(str_new)
输出:
I am tried !
注意:这里合并后第一个元素的前面是没有指定的字符或者时字符串的。所以如果有特殊的输出要求还需要在输出时,在第一个元素的前面加上指定的符号或者字符串。
检索字符串:
1、检索字符串是使用count()方法,unt(sub,start,end)(str:表示原字符串,sub:表示要检索的字符串,start:检索字符串时检索的起始位置,不指定则从头检索,end:表示检索的结束位置,不指定则表示直到检索到结尾。如果检索不到该方法返回0,如果检索到则返回个数。如:
str1='小城市没有工作啊啊啊!啊'
unt("啊",9,10))
unt("啊"))
输出:
1
4
2、检索字符串也可以用find()方法来实现,find()方法与count()方法内参相同,不同在于。如果检索的字符串不在,则返回-1,如果存在则返回第一次

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。