Python小技巧
下划线的使用
- 数字很大时,可以加下划线进行分割:
num1=10000000000
num2=100000000
print (num1+num2)
num1=10_000_000_000
num2=100_000_000
total=num1+num2
print (f'{total:,}')
>>10,100,000,000
- 只想取序列的头和尾时,可以使用下划线:
nums=(1,2,3,4,5,6,7,8,9)
head=nums[0]
tail=nums[-1]
print (head)
print (tail)
nums=(1,2,3,4,5,6,7,8,9)
head,*_,tail=nums
print (head)
print (tail)
文件的关闭
用with处理更方便
f=open('log.txt','r')
file_contents=f.read()
f.close()
words=file_contents.split(' ')
word_count=len(words)
print (word_count)
with open('log.txt','r') as f:
file_contents=f.read()
words=file_contents.split(' ')
word_count=len(words)
print (word_count)
遍历多个序列
以不用enumerate(),而使用zip()
names=['Leo','Lili','Sam','Tom']
ages=[30,20,28,25]
for index,name in enumerate(names):
age=ages[index]
print (f'{name} is {age} old')
names=['Leo','Lili','Sam','Tom']
ages=[30,20,28,25]
habits=['Movies','Dance','Reading','Singing']
for name ,age,habit in zip(names,ages,habits):
print (f'{name} is {age} old and like {habit}')
输入加密的密码
username=input('Username: ')
passwd=input('Passwd:')
print ('Logging In...')
>>
Username: user
Passwd:admin
Logging In...
from getpass import getpass
username=input('Username: ')
passwd=getpass('Passwd:')
print ('Logging In...')>>
Username: aa
Passwd:
Logging In...
参考源:微信公众号 菜鸟学python(8个Python小Tips)