#生成随机密码,length为密码长度,包含数字,字母
def GenPassword(length=8,chars=string.ascii_letters+string.digits):
return ''.join([choice(chars) for i in range(length)])
本文链接1(): https://www.jianshu.com/p/ddcde984b705本文链接2(CSDN): https://blog.csdn.net/COCO56/article/details/90051016
随机给定的字符串中可能不仅包含数字字符,还包含其他类型的字符,我们现在需要把字符串中的数字全部提取出来,然后再进行求和。如'1asd22',那么先把这个字符串中的1和22提取出来,然后进行求和,得到结果23。
对这类特定数据提取的工作,使用正则表达式很方便。
import re
string = '123rrr1iii56oooo9'
pattern = re.compile('\d+')
results = re.findall(pattern, string)
print(results)
sum = 0
for result in results:
sum += int(result)
print(sum)
Python生成8位随机字符串的方法分析篇文章主要介绍了Python生成8位随机字符串的方法,结合实例形式对比分析了2种比较常用的随机字符串生成技巧,具有一定参考借鉴价值,需要的朋友可以参考下
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import random
import string
#第一种方法
seed = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!@#$%^&*()_+=-"
sa = []
for i in range(8):
sa.append(random.choice(seed))
salt = '.join(sa)
print salt
#运行结果:l7VSbNEG
#第二种方法
salt = '.join(random.sample(string.ascii_letters + string.digits, 8))
print salt
#运行结果:VOuCtHZs
生成随机字符串
在加密用户密码的时候,一个好方法就是产生一个随机字符串,然后再和密码进行混合求摘要。产生随机字符串的方法找到了这些。
第一种比较简单,易于理解
第二种不好理解,但很简洁
本来我只想随机取四个数字的,用的random.randint(1000,9999)。但是这个开头不会出现0,有点不爽,后来找到这个文章。