python刷题笔记

对字典按照值的顺序排序

1
2
dic = {"red":5,"or":6}
new_dic = sorted(dic.items(),key= lambda x:x[1],reverse=True)

注意:变成列表嵌套元祖,需要进行解包操作

如何对元祖进行解包

一对一解包:

1
2
result_n,result_num = dic[0]
print(result_n)

这样既可取出两个元素元祖内的两个元素

删除字符串中的字符

删除字符串两端或一段的多种字符

list.strip(字符):删除字符串两端的一种或多种字符

1
2
3
s = "abbbmmmcccaaabb"
s1 = s.strip('abc')
print(s1) #mmm

list.lstrip(字符):删除字符串左端的一种或多种字符

list.rstrip(字符):删除字符串右端的一种或多种字符

str.replace(被替换的字符,")

1
2
3
s = 'abc:abc'
s1 = s.replace(':','')
print(s1) #abcabc

enumerate遍历列表同时获取元素及下表

1
2
for i,item in enumerate(List):
print(i,item)

强制退出python程序

需要在内循环里结束两个循环时,可以用强制退出程序

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import sys
chouma,cishu = map(int,input().split())
d = 0
for i in range(cishu):
n1,b,t,n2 = map(int,input().split())
if chouma >= t:
if b == 0:
if n2<n1:
chouma += t
print('Win {}! Total = {}.'.format(t,chouma))
else:
chouma -= t
print('Lose {}. Total = {}.'.format(t,chouma))
if chouma == 0:
print('Game Over.')
sys.exit()
else:
if n2>n1:
chouma += t
print('Win {}! Total = {}.'.format(t,chouma))
else:
chouma -= t
print('Lose {}. Total = {}.'.format(t,chouma))
if chouma == 0:
print('Game Over.')
sys.exit()
else:
print('Not enough tokens. Total = {}.'.format(chouma))

导入sys包 sys.exit()

不足位数补零

Python zfill() 方法返回指定长度的字符串,原字符串右对齐,前面填充0。
Python rjust() 返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串。如果指定的长度小于字符串的长度则返回原字符串。

zfill()方法语法:
str.zfill(width)
width – 指定字符串的长度。原字符串右对齐,前面填充0。

rjust()方法语法:
str.rjust(width[, fillchar])
width – 指定填充指定字符后中字符串的总长度.
fillchar – 填充的字符,默认为空格。