Python 学习 DAY1(still)
s3 Strings and o console utput
1 Python里面还有一种好的数据类型是String
2 一个String是通过'' 或者 ""包成的串
3 Python是通过\来实现转义字符的
4 我们可以使用""来避免转义字符的出现
练习: 把变量letter设置为MONTY的第五个字符
5 Strings的第一种用法,len()求字符串长度
6 String的第二种方法,lower()把字符串的所有大写字母转换成小写字母
7 String的第三种方法,upper()把字符串的所有小写字母转换成大写字母
8 String的第四种方法,str()把非字符串转化为字符串,比如str(2)是把2转化为字符串"2"
9 以上的方法除了len(),其他的方法都可以写成.fun()和fun(string)
10 字符串的格式化,使用%来格式化,字符串是%s
string,字符串(由一系列不可改变的Unicode字符组成):如strtest='abcde'。(不能使用strtest[0] = 'a'改变字符串的内容)
-
- 字符串提取
- print (strtest[0]),输出a
- print (strtest[-1]),输出e
- 范围引用,基本样式[下限:上限:步长]
- print (strtest[:3]) #输出abc
- print (strtest[1:-1]) #输出bcd
- print (strtest[::2]) #输出ace
- print (strtest + strtest) = print (strtest*2),输出abcdeabcde
- 字符串包含判断:in, not in
- "He" in str
- “she” not in str
- 字符串的方法
- S.find(substring, [start [,end]]) #可指范围查找子串,返回索引值,否则返回-1
- S.rfind(substring,[start [,end]]) #反向查找
- S.index(substring,[start [,end]]) #同find,只是找不到产生ValueError异常
- S.rindex(substring,[start [,end]])#同上反向查找
- S.count(substring,[start [,end]]) #返回找到子串的个数
- S.lowercase()
- S.capitalize() #首字母大写
- S.lower() #转小写
- S.upper() #转大写
- S.swapcase() #大小写互换
- S.split(str, ' ') #将string转list,以空格切分
- S.join(list, ' ') #将list转string,以空格连接
- S.format():接受位置参数和关键字参数. 例:"I like {0} and {{rice}}.".format("eggs.") -> "I like eggs and {rice}."
- 处理字符串的内置函数
- len(str) #串长度
- cmp("my friend", str) #字符串比较。第一个大,返回1
- max('abcxyz') #寻找字符串中最大的字符
- min('abcxyz') #寻找字符串中最小的字符
- string的转换
- oat(str) #变成浮点数,float("1e-1") 结果为0.1
- int(str) #变成整型, int("12") 结果为12
- int(str,base) #变成base进制整型数,int("11",2) 结果为2
- long(str) #变成长整型,
- long(str,base) #变成base进制长整型,
- 字符串的格式化(注意其转义字符,大多如C语言的,略)
- str_format % (参数列表) #参数列表是以tuple的形式定义的,即不可运行中改变
- >>>print ("%s's height is %dcm" % ("My brother", 180))
- #结果显示为 My brother's height is 180cm
- 单引号和双引号的字符串的对比:
- "Hello, world" 与 'Hello, world'相同
- "Let's go!"(正常字符串) 与 'Let's go!'(非正常字符串 -> 使用转义字符修改为正常字符串:'Let\'s go!')
- print ('ab\ncd') :输出分别为'ab'和'cd'的两行;而print (r'ab\ncd')直接输出无转义的字符串'ab\ncd'
- 字符串提取