1 批量生成变量
使用函数locals()可批量生成 x 1 = 1 , x 2 = 2 , x 3 = 3 , … x_1=1, x_2=2, x_3=3,\dots x1=1,x2=2,x3=3,…。
## python code
name = 'x_'
size = 4
# list存储变量名
var_names = [name + str(i) for i in range(size)]
for i,n in enumerate(var_names):
locals()[n] = i+1
print('x_1:', x_1)
print('x_3:', x_3)
x_1: 2
x_3: 4
2 显示进度条
2.1 使用tqdm库
库安装
pip install tqdm
函数trange用法
from tqdm import trange, tqdm
from time import sleep
for i in trange(10, ncols=50): # nclos控制进度条的长度
sleep(0.1)
tqdm的用法
from tqdm import trange, tqdm
from time import sleep
text = ""
for char in tqdm(["a", "b", "c", "d"]):
text = text + char
sleep(0.5)
进度条前打印自定义的语句
pbar = tqdm(["a", "b", "c", "d"])
for char in pbar:
pbar.set_description("Processing %s" % char)
sleep(4)
2.2 自定义
import sys,time
it = 100
for i in range(it):
k = i + 1
writer = k / 100.0
#
sample = '>' * (i//2) + ' '*((it - k)//2)
sys.stdout.write('\r' + sample + '[{0}%], {1}'.format(i+1, writer))
sys.stdout.flush()
time.sleep(0.1)
print(' ,end')
更多用法见tqdm github文档。
3 生成大小字母和数字
3.1 可以通过str函数将ASCII值转化为数字和字母。
print([chr(i) for i in range(65,91)])#所有大写字母
print([chr(i) for i in range(97,123)])#所有小写字母
print([chr(i) for i in range(48,58)])#所有数字
['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3.2 使用string库
>>> import string
>>> string.ascii_lowercase
'abcdefghijklmnopqrstuvwxyz'
>>> string.ascii_uppercase
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
>>> string.digits
'0123456789'
>>> string.ascii_letters
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
string的用法见Python String。
4 python中print打印显示颜色
显示颜色的格式
\ 033 [显示方式;字体色,背景色 ...... \ 033 [0m!
显示颜色的参数
print('This is a \033[1;35m test \033[0m!')
print('This is a \033[1;32;43m test \033[0m!')
print('\033[1;33;44m This is a test !\033[0m')
效果
完全参考于Mr-Liuqx博客,感谢!