随堂笔记python 11day 补
制表符 \t
换行符 \n
断句20,增加20个空格 .expandtabs
1 #01 2 test = '123456\t7897' 3 v = test.expandtabs(20) 4 print(v) 5 6 7 结果 8 123456 7897
判断是否是字符 .isalpha()
#02 test = 'asdf' v = test.isalpha() print(v) 结果 True
判断输入是否是数字(都是) .isdecimal() 和 .isdigit()
#3 test = '1234' v1 = test.isdecimal() #判断是否是十进制数字 v2 = test.isdigit() #可以是特殊数字,比如带圈的2 print(v1, v2) 结果 True True
判断是否是数字(支持中文数字判断和特殊数字)功能更加的强大,通常都使用它 .isnumeric
#04 test = '二' v = test.isnumeric() print(v) 结果 True
显示存在不显示的字符 .isprintable
#05 test1 = 'sdjfksdlkfsdkf' test2 = 'jdslkfjs\tlkfj' test3 = 'sdfsdf\ndkjkjk' n1 = test1.isprintable() n2 = test2.isprintable() n3 = test3.isprintable() print(n1, n2, n3) 结果 True False False
判断是否全部是空格 .isspace
#06 test1 = 'adsfklsdjf' test2 = ' ' v1 = test1.isspace() v2 = test2.isspace() print(v1, v2) result False True
判断是否是标题
#07 标题是要首字母要大写 test1 = 'Wang Ba Dan' test2 = 'ang Ba Dan' v1 = test1.istitle() v2 = test2.title() print(v1,v2) RESULT True Ang Ba Dan
****************重要*********将字符串中的每一个元素按照指定分割符进行并接 .join
#08 test = '你是风儿我是沙' print(test) v = '-'.join(test) print(v) RESULT 你是风儿我是沙 你-是-风-儿-我-是-沙
补充,另一种插入
#补充 其中的符号字型要用''括起来 test = 'wolf' v1 = test.ljust(20,'*') v2 = test.rjust(20,'#') print(v1) print(v2) result v1 =wolf**************** v2 =################wolf
判断是否全部是大写 (小写),和转化成大写(小写)
#09 大写 test = 'eqrg' v1 = test.isupper() v2 = test.upper() print(v1,v2) result False EQRG
小写 test = 'EQRG' v1 = test.lower() v2 = test.islower() print(v1, v2) result eqrg False
去除左右空白(空格)或者是指定字符
01去除空格 .strip
02 去除左边空格 (left) .lstrip()
03 去除右边空格 (right) .rstrip()
。。。未完成 *******存在问题***它是怎么删除的(只能删除两边的开头吗,怎么删除中间的指定的字符)
#10 test = 'bei0' v1 = test.strip() #还可以去除\n和\t,和指定字符。括号里没有写通常是默认是空格 v2 = test.rstrip('0') v3 = test.lstrip('b') print(v1) print(v2) print(v3) result bei0 bei ei0
******def maketrans(py2和py3有所不同)
待补充
不是很理解
#建立对应关系 m = str.maketrans('aeiou', '12345')
将对应的字符替换
待补充
判断是以什么什么开头,是以什么什么结尾
输出的是布尔值
test = 'sdfs1.1.1.1.1' v = test.startswith('sd') print(v) n = test.endswith('1') print(n) result True True
大小写转换
将大写换成小写,将小写变成大写
def swapcase(self)
m = 'abdABD' v = m.swapcase() print(v) result ABDabd
分割只能根据换行符,true 和 false 来判断是否保留换行符
test = 'asdfsfadsf\nsdfafadf\nsdfafa' v1 = test.splitlines(False) v2 = test.splitlines(True) print(v1) print(v2) result v1=['asdfsfadsf', 'sdfafadf', 'sdfafa'] v2=['asdfsfadsf\n', 'sdfafadf\n', 'sdfafa']
分割的其他魔法(待补充)
.partition 和 .rpartition
.split 和 .rsplit
替换
test = 'alexalexelex' v = test.replace('ex','bbbbb',2)#其中的二代表将替换几次 print(v) result albbbbbalbbbbbelex
************记住7个基本魔法*******************************
1.join
2.split
3.find
4.strip
5.upper
6.lower
7.replace
*****************************************
********************记住灰魔法4个*********************************
1.索引,下标(索引,下标,获得字符串中的某个字符)
索引是从0开始数的,第一个字符的索引是0.索引用的是 [ ] 中括号
test = 'aioe'
v = test[ 数字 ]
print( 数字 )
result: 数字对应的字母
a--------0
i-------------1
o--------------2
e-------------3
*******
v = test【0:1】 区间是 0 =< x < 1
切片
len获得当前字符串中由多少个字符组成
len 想知道test有多少个字符组成
v = len(test)
print(v)
result:4
注意:len在其他领域中可以用得到
03.for循环
for 变量名 in 字符串
变量名
灰魔法在其他领域可以使用
注意字符串一旦被创建,就不可以修改
一旦修改或者并接,都会创造新的字符串
range在python2 和python3 中是不一样的
range(100)在python2中会被马上创建0到100的数字,内存会被占用。
在python3中range(100)是以for循环中使用时创建,创建完就销毁,回收内存。
04.range:帮助创建连续的数字,通过设置步长来创建指定不连续数字
range(0,100,5)
其中5是步长