python_day4
1.字符串:
>>> str1='I love fishc.com' >>> str1 'I love fishc.com' >>> str1[:6] 'I love' >>> str1[5] 'e'
字符串就像元组一样是不能直接修改的,下面的例子中并不是本质意义上的修改
>>> str1[:6]+'wwq'+str1[6:] 'I lovewwq fishc.com'
修改方法如下,这样python的垃圾回收机制在一段时间之后就会把之前str1指向的内容回收。
>>> str1=str1[:6]+'wwq'+str1[6:] >>> str1 'I lovewwq fishc.com'
2.字符串的一些内置函数:
capitalize(),把第一个字母大写,
>>> str2='xiaoxie' >>> str2 'xiaoxie' >>> str2.capitalize() 'Xiaoxie'
casefold()把整个字符串变成小写
>>> str2='WWQ' >>> str2.casefold() 'wwq'
center(width)
>>> str2.center(20) ' WWQ '
count()
>>> str2.count('W') 2
encode()编码
endswith()检查字符串是否以指定字符结尾:
>>> str2.endswith('w') False >>> str2.endswith('Q') True
expandtabs([tabsize=8])
把字符串中的tab符号(\t)转换为空格,默认的空格数是tabsize=8
>>> str2 'username\temail\tpass\tsex' >>> str2.expandtabs() 'username email pass sex'
find(sub[,start[,end]]) 检查sub是否包含在字符串中,start和end表示范围;如果有则返回索引,否则返回-1。
>>> str1='I love fishc.com' >>> str1.find('ve') 4
index(sub[,start[,end]]) 跟find方法一样,但是如果不存在会产生一个异常。
isalnum() 如果字符串至少有一个字符并且左右字符都是数字或字符则返回true,否则返回false
isalpha() 如果字符串至少有一个字符并且所有字符都是字母则返回true
isdecimal() 如果字符串只包括十进制数字则返回true
isdigit() 如果字符串只包含数字则返回true
islower() 如果字符串中至少包含一个区分大小写的字符,并且这些字符都是小写,则返回true
isnumeric() 如果字符串中只包含数字字符,则返回true
isspace() 如果字符串中只包含空格
istitle() 如果字符串是标题化(所有单词都是以大写开始其余字母均小写)
isupper()如果字符串中至少包含一个区分大小写的字符,并且这些字符都是大写,则返回true
join(sub)以字符串为分隔符,插入到sub中所有的字符之间
>>> str1.join('1234') '1I love fishc.com2I love fishc.com3I love fishc.com4'
ljust(width)左对齐; lower()转换所有大写为小写; lstrip()去掉字符串左边的所有空格
partition(sub)找到子字符串sub,把字符串分成一个三元组(pre_sub,sub,fol_sub);如果不包含,返回(‘原字符串’,‘ ’,‘ ’)
replace(ord,new[,count])把字符串中old子字符串替换为new,如果count指定,则替换不超过count次。
rfind(sub[,start[,end]])类似于rfind方法,只不过是从右边开始查找。
3.字符串format方法:
>>> "{0} love {1}.{2}".format("i","fichc","com") 'i love fichc.com' >>> "{a} love {b}.{c}".format(a="i",b="fichc",c="com") 'i love fichc.com' >>> "{{0}}".format("不打印") '{0}' >>> '{0:.1f}{1}'.format(27.658,'GB') '27.7GB' >>> '%c' %98 'b' >>> '%c %c %c' %(97,98,99) 'a b c' >>> '%5.1f' %27.658 ' 27.7' >>> "%.2e" % 27.678 '2.77e+01'
>>> '{0:.1f}{1}'.format(27.658,'GB')
'27.7GB' 其中.1四舍五入;f定点数
%c格式化字符及其ASCII吗 %s格式化字符 %d格式化整数 %o格式化无符号八进制数 %x格式化无符号十六进制
%X格式化无符号十六进制(大写) %f格式化定点数,可指定小数点后的精度 %e用科学技术发格式化定点数 %E同上
%g根据值得大小决定使用%f或%e %G同上
格式化操作符辅助指令:
m.n m是显示的最小总宽度,n是小数点后的位数
- 用于左对齐
+ 在正数前面显示加号
# 在八进制数前面显示零,在十六进制前面显示0x
4.列表、元组和字符串的共同点
都可以通过索引得到每一个元素;默认索引值从0开始;可以通过分片的方法得到一个范围内的
元素的集合;有很多共同的操作符(重复操作符,拼接操作符,成员关系操作符)
list函数
>>> a=list() >>> a [] >>> b='I love fishc.com' >>> b=list(b) >>> b ['I', ' ', 'l', 'o', 'v', 'e', ' ', 'f', 'i', 's', 'h', 'c', '.', 'c', 'o', 'm']
把一个元组变成一个列表
>>> c=(1,1,2,3,5,8,13,21,34) >>> c=list(c) >>> c [1, 1, 2, 3, 5, 8, 13, 21, 34] len方法 >>> len(c) 9 max >>> max(c) 34
用max或者Min时,列表中类型要全部一样