字符串的用法
res = 'hellow,world' print(res) #res.显示的都是它的方法,下划线的除外
1 判断字符串的结尾字符,返回的值的布尔形式
endswith
判断字符串的开头字符是否为当前字符串的开头字符
startswith
2 统计字符串内的字符的下标(第几位),从右往左统计,是从-1开始,第一个字符是-1.
rindex
查找字符串内最靠左字符下标
index
3 可以定义一个变值,是叫字符串格式化
format
方式一
result = 'my name is {name}, my age is {28}' result1 = result.format(name='杨旭',age=28) print(result1)
方式二
result = 'my name is {0 }, my age is {1 }' result1 = result.format('杨旭', 28)
方式三:还有一种字符串格式化的用法 %s包括%d和%f
result = 'my name is %s, my age is %s' result1 = result % ('杨旭',28) print(result1) result = 'my age is 29 %s' result1 = result % 28 print(result1)
4 把字符串里的小写字母变大写字母
swapcase
把字符串里的小写字母变大写字母对整个字符串生效
upper
5 统计字符串里的指定字符的个数
count
6 把一个可迭代对象(列表,元祖,集合,字典,字符串)变成字符串
join ''.join(['a','b','c'])
利用下划线将列表的每一个元素拼接成字符串,li = [alexericrain]
test="alexericrain" v='_'.join(test) print(v)
把字符串变成列表也可以结合步长使用。你的步长为多少,它就为几个分隔符。
split res = 'hellow,world' print(res.split(',')) 这是以,为分割点 将字符串分割为两部分,'heloow''world'
从右往左把字符串变成列表也可以结合步长使用
rsplit
7 替换字符串内的字符可以结合步长使用
replace res = 'hellow,world' print(res.replace('l','ok',2)) hellow,world里有三个l,当设置步长等于2,那么只替换前2个l。
8 判断是否是抬头,也就是标题了解即可
istitle
把一个字符串变成抬头
title
9 判断是否为小写
islower
是判断是否为大写
isupper
判断字符串是否为纯英文,只有英文字母,没有空格,特殊符号
isalpha
10 去除首尾的字符
strip
去除右边的字符
rstrip
去除左边的字符
lstrip
11 encode转码的意思,大部分用来传输传输的时候是2进制传输。
res1 = '你好' a = res1.encode('utf-8') #utf-8是转成bat字节类型 print(a.decode('utf-8')) #是解码
12 判断字符串是否是纯空格,而不是判断字符串里是否有空格
isspace
13 查找指定元素在该字符串的内下标,如果搜素没有的字符,返回-1
find
14 + 字符串拼接
res1 = 'my name is' res2 = '杨旭' print(res1+res2)
15 字符串切片,我要我想要的,去除我不想要的,它是顾头不顾尾
res = 'hellow,world'
正向切片是顾头不顾尾
这是取单个字符,只需输入对应字符的下标即可
print(res[4])
这是取了两个字符,并把两个字符拼接起来
print(res[4]+res[5])
这是顾头不顾尾取法
print(res[2:5])
这是下标为3的往右以后的字符都不要了
print(res[:3])
这是小标为3的往左字符都不要了
print(res[3:])
反向切片也是顾尾不顾头
这是只取-2到-4,-1不要了
print(res[-4:-1])
这个是隔1个取一个,步长为2
print(res[0:-1:2])
这是从右边往左数,下标为-5往右的字符不要了,包括-5
print(res[:-5])
16 判断整个字符串是否为整型
print(res.isdegit())
判断整个字符串内是否含有数字或字母 含有为True,不含有为False
isalnum
如何打印断点
断点可以有效的帮助我们看清代码的走向,对于日后函数的学习有很大的帮助。
点击每行代码与序号之间的空白处即可,出现红色圆点表示标注成功,而后运行代码,选择debug即可。
列表用法
res = ['a','b','c','d']
1 检索括号内元素的下标
prtint(res.index('b'))
2 统计括号内元素的个数
print(res.count('d'))
3 在指定下标的元素前插入元素
res.insert(2,'sb') print(res)
4 对列表内的元素从a-z进行排序,如果首写字母相同,比较第二个字母
res.sort() print(res)
5 方式一: 两个列表追加合并成一个列表
res.extend([’ss’,’vv’,’dd’]) print(res)
方式二:
print(res+[’ss’,’vv’,’dd’])
6 括号里不输入数值是默认从右往左依次取出,也可以用作取出print(res.pop(4))
res.pop() print(res)
7 清空列表内所有元素
res.clear() print(res)
8 删除列表内指定元素
res.remove('aaa') print(res)
9 复制一个列表
a = res.copy() print(a)
10 将列表内的元素从后到前排列出来,倒序
res.reverse() print(res)
11 追加一个元素
res.append(’ssbb’) print(res)
12 列表也可以切片
print(res[ : ])
13 这是改变列表内的元素
res[2]='ss' print(res)
pycharm快捷键
ctrl+d : 复制一行并且粘贴
ctrl+z : 撤销上次操作
ctrl+?: 注释
ctrl+w :以元素为单位去选定
元组的用法,元组大多数是用来读的,不能用作修改,列表是可存可取,在内存当中,列表比元组占用的空间大,元组也支持切片
t1 = ('a','b','c')
1 检索当前元组中有多少个a
l1 = ['a','b','c'] res = t1.count('a') print(res)
2 检索当前元组中a的下标是多少
res = t1.index('a') print(res)
字典的用法,字典的key是唯一的。
infor = { 'name':'sb', 'age': '19', }
1 取出字典里最后一组元素,取出后该组元素不存在原字典
info.popitem()
2 取出values,取出后,value不存在原字典
info.pop('name')
3 添加key:value,如果有不添加,如果没有,添加
info.setdefault('high','190')
拷贝字典
res = info.copy()
4 把两个字典合并成一个,如果有相同的key,括号里的将覆盖原字典
info.update()
5 把key:value的形式变成小元组的形式
info.items()
6 把所有的key列出来
info.keys()
循环
for i in res: print(i)
7 把所有的value列出来
infor.values()
8 取值的意思,得到的结果是相对应的value,如果取一个没有的key,返回None
infor.get('name')
9 也是取值的的意思,如果取一个没有的key,将报错,但它是可以赋值的
infor[ 'name' ]
10 快速定义一个空字典
{}.fromkeys(['name','age','high'],None)
集合是无序的,不重复的,可以存储多个值,去重,集合没有索引
set1 = {1,2,3,4,5,5,}
1 合并两个集合
set2 = {1,2,6,7} set1.update(set2) print(set1)
2 随机取出集合内的元素
set1.pop()
3 这是查找这两个集合的并集
set1.union(set2)
4 删除集合内指定元素
set1.remove('1')
5 删除集合内指定元素
set1.discard('1')
6 添加元素
set1.add('9')
7 判断set1是否为set2的子集
set1.issubset(set2)
8 查看set1跟set2的交集
set1.intersection(set2)
9 取出两个集合的差集
set2.difference(set1)
布尔的用法
谨记
0,None,空都为假,其余都为真
数据类型转换
可以将任意数据类型转换为字符串数据类型
a = 1 res = str(a) print(type(res))
可以将任意数据类型转换为列表
s = xxxxxxxx res = list(s) print(res)
截取整型,就是只保留整数位
res= x.xxx res1 = int(res) print(res1)
for循环
res = ’hello,world’ for i in res: print(i)
这是循环的每一个字符,整型是不能够被循环的。
内置函数:
range(0,10)
代表0-9
for i in range(0,10)
代表打印0-9
range也是顾头不顾尾,他也可以结合步长使用