我学习python没有记住的东西

格式化

# 格式化
a=123
b='ww'
print("%d,%s,%%"%(a,b))
# %d,%s,%f,%c,%f

 格式化代码:print('{}{}'.format(a,b)) 

while-else:没有while就走else

优先级:()>not>and>or。谁先在,先算谁!!!

列表增删查改

# append 追加,给列表的最后面追加一个元素
l = [1, 2, 'a']
l.append(666)
print(l) # [1, 2, 'a', 666]

# insert  插入在列表的任意位置插入元素
l = [1, 2, 'a']
l.insert(1,'太白')
print(l) # [1, '太白', 2, 'a']

# extend  迭代着追加,在列表的最后面迭代着追加一组数据
l = [1, 2, 'a']
l.extend('太白# pop  通过索引删除列表中对应的元素,该方法有返回值,返回值为删除的元l = ['太白', 'alex', 'WuSir', '女神']
ret = l.pop(1)
print(ret,l) # alex ['太白', 'WuSir', '女神']

# remove  通过元素删除列表中该元素
l = ['太白', 'alex', 'WuSir', '女神']
l.remove('alex')
print(l) # ['太白', 'WuSir', '女神']

# clear 清空列表
l = ['太白', 'alex', 'WuSir', '女神']
l.clear()
print(l) # []  

# del
#按照索引删除该元素
l = ['太白', 'alex', 'WuSir', '女神']
del l[2]
print(l) # ['太白', 'alex', '女神']

# 切片删除该元素,顾头不顾腚
l = ['太白', 'alex', 'WuSir', '女神']
del l[1:2]
print(l) # ['太白', 'WuSir', '女神']

# 切片(步长)删除该元素
l = ['太白', 'alex', 'WuSir', '女神']
del l[::2]
print(l) # ['alex', '女神']
# 按照索引改值
l = ['太白', 'alex', 'WuSir', '女神']
l[0] = '男神'
print(l) # ['男神', 'alex', 'WuSir', '女神']

# 按照切片改值(迭代着增加)
l = ['太白', 'alex', 'WuSir', '女神']
l[1:3] = 'abcdefg'
# 先把以前的拿出来,空了想添多少填多少,以当前类型最小单位
# l[1:3] = ['abcdefg'] # 把字符类型转为列表,列表的最小单位
print(l) # ['太白', 'a', 'b', 'c', 'd', 'e', 'f', 'g', '女神']
# 按照切片(步长)改值(必须一一对应)
l = ['太白', 'alex', 'WuSir', '女神']
l[::2] = '对应'
print(l) # ['对', 'alex', '应', '女神']

其他:

排序:sort(),sort(reverse = True)

反转:reverse()

列表转字符串:

join()

str=''.join(list)

l = ['太白', 'alex', 'WuSir', '女神']
s = ''.join(l)
print(s)
s = '_'.join(s)
print(s)
>>太白alexWuSir女神
>>太_白_a_l_e_x_W_u_S_i_r_女_神

index(X): 从列表中找出X的索引位置。

Tip:

切片:[从什么开始:从什么结束:步长]

字符串操作:

capitalize:首字母大写,其余小写

title:每个单词首字母大写

swapcase:大小写反转

center(X):在X个字符中居中字符串

expandtabs:

s = '12\t3456'
ss = s.expandtabs()
print(ss)
>>12      3456

格式化的更整齐,比\t不容易出错。

startwith(X):是否以X开头。返回True,False

startwith(X,Y,Z):字符串第Y位次开始,第Z位次结束,是否以X开头

类似:endwith

Tip:位次从0开始算

字符串索引:

v = 'Xiaoran'
vv = v.find('r')
print(vv,type(vv))
>>4 <class 'int'>

找到任意字符的位置,找不到返回-1

index():和find一样,但找不到报错

去空格strip()

类似 lstrip,rstrip:左去空格,右去空格

count(X):在字符串中X的数量

split():分割,

s = 'Xiaoran Wang Shuo ran'
l = s.split() # 默认以空格拆分为列表
print(l)

 replace():

s = 'Xiaoran Wang Shuo ran'
l = s.replace('Xiaoran','tongxue',1) # 替换几次,默认全部
print(l)

用新字符串来替换旧的。前面是旧的,后面是新的。

元组:只读列表。儿子不能改,孙子可能可以改

如果元组中只有一个元素,元素什么类型就是什么类型。逗号不是元素,分隔符。

遍历列表(列表其中有列表)

字典增删查改:

#
dic = {'name': 'xiaoran'}
dic['age'] = 12
print(dic)
dic.setdefault('age', 20)
print(dic)

#
print(dic.pop('name', None))
print(dic)
del dic['age']
print(dic)

#
dic = {'name': 'xiaoran'}
dic['name'] = 'ran'
print(dic)

# 更新(大批量改)
dic_2 = {'name': 'xiaoran', 'age': 18}
dic.update(dic_2)  # 点谁操作谁(dic)

#
for k,v in dic_2.items():
    print(k,v)


# 取用
print(dic.get('name'))

编码:

s1 = 'alex'
# encode 编码,如何将str --> bytes, ()
s11 = s1.encode('utf-8')

 集合:

其中不能放不可变的(可哈希的)数据类型:

se = {1,2,3,4}
#
se.add(2) # 无序
se.update({'abc'}) # 其中最小元素
print(se)

#
se.remove('2')
se.clear()
del se

 

posted @ 2019-10-08 08:36  小然同学  阅读(355)  评论(0编辑  收藏  举报