背景:
将不同类型的字符串(大小写字母、数字、特殊字符、中文),随机放在一起,可以指定不同类型字符串长度。如,全为大写字母;15个数字;大小写字母、数字、特殊字符、中文各1个

环境:Windows7 + Python3.6.6

代码:
import string import random class RandomStrings: def random_strings(self,
length_uper, length_lower, length_digit, length_spec, length_chn): uppers =
self._init_strings(string.ascii_uppercase) lowers =
self._init_strings(string.ascii_lowercase) digits =
self._init_strings(string.digits) specials = [chr(i) for i in range(33, 48)] +
[chr(i) for i in range(59, 65)] chns = ['中', '国'] results =
self._total_strings(uppers, length_uper) + self._total_strings(lowers,
length_lower) + self._total_strings(digits, length_digit) +
self._total_strings(specials, length_spec) + self._total_strings(chns,
length_chn) return ''.join(random.sample(result, len(result))) def
_init_strings(self, str): temp = [] for i in str: temp.append(i) return temp
def _total_strings(self, string_list, length): temp = [] for i in
range(length): temp.append(string_list[random.randint(0, len(string_list) -
1)]) return temp if __name__ == '__main__': rs = RandomStrings()
print(rs.random_strings(1, 1, 1, 1, 1))
备注:虽然功能实现,也暂无大的Bug。不过,代码不是很Python,以后再慢慢优化吧~~~

技术
今日推荐
PPT
阅读数 121
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:766591547
关注微信