Python算法刷题常用tips总结
第一篇 因为先前都是比较零散刷题,只统计了一些刚开始刷题时的重复使用要点tips,后续篇章会结合题目分析并发布笔记心得,记录算法成长之路
print("...",end="") #不换行
print('{0} and {1}'.format('spam', 'eggs')) #spam and eggs
print("PI = %10.3f" % math.pi) # 3.142(空格填补)
print("%.3s" %("abcde")) #控制位数
#%x --- hex 十六进制
#%o --- oct 八进制
#%s --- 字符串
#%f --- float 浮点数
#%c --- 字符
#%d --- 有符号十进制整数
#%u --- 无符号十进制整数
#%x --- 16进制整数(小写字母)
#%X --- 16进制整数(大写字母)
while True以及break
break 终止最深层的循环循环语句,不再执行
continue跳出本次循环,执行下一次
pass不做任何,只占位
a,b = input(“姓名:,电话:”).split()
map(int【function】,input())
>>>def square(x) : # 计算平方数
return x ** 2
>>> map(square, [1,2,3,4,5]) # 计算列表各个元素的平方
<map object at 0x100d3d550> # 返回迭代器
>>> list(map(square, [1,2,3,4,5])) # 使用 list() 转换为列表
[1, 4, 9, 16, 25]
>>> list(map(lambda x: x ** 2, [1, 2, 3, 4, 5])) # 使用 lambda 匿名函数
[1, 4, 9, 16, 25]
split(str,num【分隔次数】)
str = "Line1-abcdef \nLine2-abc \nLine4-abcd";
print str.split( ); # 以空格为分隔符,包含 \n
print str.split(' ', 1 ); # 以空格为分隔符,分隔成两个
#['Line1-abcdef', 'Line2-abc', 'Line4-abcd']
#['Line1-abcdef', '\nLine2-abc \nLine4-abcd']
b表示二进制
d制
o八进制
x十六进制
print( x【字符串】[::-1])翻转读取
sum(int(item) for item in num)
sorted(arr,reverse = True) 从大到小
sorted(arr,key = lambda x: x[1]) 按关键字排序
ord(‘A’)将字母转为ASCII码
chr(‘A’)将ASCII码转为字母
{0:0>5}.format(format(a,‘b’)