python0.4----字符串

字符串:是由单引号或双引号括起来的文本(不包含引号)

 

字符串操作:

 字符串连接: str1=str2+str3  

 输出重复字符串:str1=str2 * 3

访问字符串中的某个字符:

通过下标访问第i字符:字符串名[下标i],字符串中包含文字也可以,一个文字相当于一个字符,虽然它可能占有2-4个字节。

字符串不可变:

一旦字符串放在了内存之中,则该内存中的字符串无法改变,数字类型同理。

例如:想要修改字符串str1里的单个字符。str1='yuliangiloveyou' 。由于字符串无法改变,表达式str1[1]=’a’是错的,不可能执行成功。

如果想改变一个字符串变量,只能通过修改引用。

例如:str1='yuliangiloveyou'。id(str1)=94618624。使用str1='iloveyouyuliang'语句。id(str1)=94619456。由于两次id不一样可知后面的赋值语句改变的是字符串引用,而不是内存里面的字符串。

字符串存到内存的过程:

例如:’a’

a通过ASCII码表-》十进制数字-》二进制数据

截取字符串中的一部分:

str2[[start,] [:stop]],截取字符串str2的[start,stop)区间中的字符,若start和stop全部省略,则打印str2整个字符串。

判断str1是否在str2中:

str1 in str2:若str1为str2的子字符串,则返回1,否则返回0。



格式化输出:

%d ,%s,%f:格式化占位符  优点:在打印多个数据的时候很方便

print(‘%s %d%.3f’ %(str1, num1,float1)) 优点:在打印多个数据的时候很方便

\:转义字符(将一些字符转换成有特殊含义的字符)

\n表示一个字符,功能是换行

\\:输出一个\

\’ : 输出一个’

\” :输出一个”

\t: 制表符(windows默认相当于4个空格,linux默认相当于8个空格)。

 

如果字符串内有很多换行,用\n写影响阅读。可以用如下形式:

print("""goog

dddd

rer""")

 

如果字符串里面有很多个字符需要转义,就需要很多个\,为了简化,python允许用r表示内部字符串默认不转义(windows用\连接各个目录,linux用/连接各个目录)。

print(r’\q\w\r\t\y\u\\gfg\dfasd\”\fasd’\’)

 

有关字符串的函数:

eval(str):将字符串str当成有效的表达式来求值,并返回计算结果。和强制转换int()函数类型,不过要强与int()

例子:num1=eval(“123”)------>num1=123   跟int()一样

num1=eval(‘12+3’)----->num2=5      比int()要强

 

len(str):返回字符串长度。

str.lower():将str中的大写字母转换成小写字母。str本身不会改变,因为字符串变量是不可一改变的变量,它只是重新开辟了一个内存空间,将转换后的字符串放在新的内存空间里面。

str.upper():将str中的大写字母转换成小写字母..................................(其他同上)。

str.swapcase():小写变大写,大写字母为小写字母.................................(其它同上)。

str.capitalize():首字母大写。

str.title():把字符串里面的每个单词的首字母大写。

str.center(width,fillchar):设置该字符串的长度为width,将str字符串居中,其他位置用fillchar填充,返回新字符串。

str.ljust(width[,fillchar]):设置该字符串的长度为width,将str字符串左对齐,其他位置用fillchar填充,返回新字符串。

str.rjust(width[,fillchar]):设置该字符串的长度为width,将str字符串右对齐,其他位置用fillchar填充,返回新字符串。

str.zfill(width):设置字符串的长度为width,右对齐,其他位置填充0字符。

str.count(str1[,start][,end]):返回str中str1出现的次数,搜索范围是[start,end),默认搜索范围是[0,len(str) )

str.find(str1[,start][,end]):在[start,end)中从左至右寻找str1是否包含在str中,若str1包含在str中,返回第一个查找到的下标,若str1不存在,则返回-1

str.rfind(str1[,start][,end]):在[start,end)中从右至左寻找str1是否包含在str中,若str1包含在str中,返回第一个查找到的下标,若str1不存在,则返回-1

str.index(str1,start=0,end=len(str)):跟find方法一样,若str1不存在,则产生异常ValueError

str.rindex(str1,start=0,end=len(str)):跟rfind方法一样,若str1不存在,则产生异常ValueError

str.lstrip([char]):删掉str左侧指定的字符char,默认删除空格

str.rstrip([char]):删掉str右侧指定的字符char,默认删除空格

str.strip([char]):删掉str左侧和右侧的字符char,默认删除空格

猜你喜欢

转载自www.cnblogs.com/yulianggo/p/9189415.html