python如何生成随机n位数字与字母组合(创建随机)

 更新时间:2023年08月09日 10:00:27   作者:wait a minutes  
这篇文章主要介绍了python如何生成随机n位数字与字母组合(创建随机),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

python生成随机n位数字与字母组合

环境

ubuntu
python3.6
random

代码 

(1)生成6位数字与字母组合

import random
n = 6
def v_code(n=6):
        """
            Returns:
                ret:random six num and letter
        """
        ret = ""
        for i in range(n):
            num = random.randint(0, 9)
            # num = chr(random.randint(48,57))#ASCII表示数字
            letter = chr(random.randint(97, 122))  # 取小写字母
            Letter = chr(random.randint(65, 90))  # 取大写字母
            s = str(random.choice([num, letter, Letter]))
            ret += s
        return ret

(2)生成6位字母组合

import random
n = 6
def v_code1(n=6):
        """
            Returns:
                ret:random six letter
        """
        ret = ""
        for i in range(n):
            letter = chr(random.randint(97, 122))  # 取小写字母
            Letter = chr(random.randint(65, 90))  # 取大写字母
            s = str(random.choice([letter, Letter]))
            ret += s
        return ret

(3)生成6位数字组合

import random
n = 6
def v_code2(n=6):
        """
            Returns:
                ret:random six num
        """
        ret = ""
        for i in range(n):
            num = random.randint(0, 9)
            s = str(random.choice([num]))
            ret += s
        return ret

(4)代码汇总

# -*- coding: UTF-8 -*-
'''
@author: mengting gu
@contact: 1065504814@qq.com
@time: 2020/11/3 下午9:04
@file: random_num.py
@desc:
    Get the combination of n numbers and upper and lower case letters.
'''
import random
n = 6
def v_code_nums_letters(n=6):
        """
            Returns:
                ret:random six num and letter
        """
        ret = ""
        for i in range(n):
            num = random.randint(0, 9)
            # num = chr(random.randint(48,57))#ASCII表示数字
            letter = chr(random.randint(97, 122))  # 取小写字母
            Letter = chr(random.randint(65, 90))  # 取大写字母
            s = str(random.choice([num, letter, Letter]))
            ret += s
        return ret
def v_code_letters(n=6):
        """
            Returns:
                ret:random six letter
        """
        ret = ""
        for i in range(n):
            letter = chr(random.randint(97, 122))  # 取小写字母
            Letter = chr(random.randint(65, 90))  # 取大写字母
            s = str(random.choice([letter, Letter]))
            ret += s
        return ret
def v_code_nums(n=6):
        """
            Returns:
                ret:random six num
        """
        ret = ""
        for i in range(n):
            num = random.randint(0, 9)
            s = str(random.choice([num]))
            ret += s
        return ret
print("v_code_nums_letters result: " + v_code_nums_letters())
print("v_code_letters result: " + v_code_letters())
print("v_code_nums result: " + v_code_nums())

结果样例:

python批量生成随机密码

需求:一次生成多个随机密码,密码强度:包含数字、大小写字母,18位。

import random
import string
# 先介绍下random怎么生成随机数和字母
# 产生一个随机整数
num = random.randint(0,10000)
print(num)
# 产生一个随机字母,注意是一个
str1 = random.choice(string.ascii_letters)
print(str1)
# 生成10个、18位随机密码,包含数字和字母大小写
def genPass(length):
    # string.ascii_letters: 生成a-Z字母
    # string.digits:生成0-9的数字字符串
    chars = string.ascii_letters + string.digits
    # 这个的意思是:从chars中获取一个随机的字符,这个字符可能是数字也可能是大小写的字母
    # 然后for循环获取18次,再用join合并成一个字符串,所以就成了一个18位的密码
    return ''.join([random.choice(chars) for i in range(length)])
if __name__ == '__main__':
    # 批量生成10个密码
    for i in range(10):
        print(genPass(18))

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python实现疫情通定时自动填写功能(附代码)

    Python实现疫情通定时自动填写功能(附代码)

    这篇文章主要介绍了Python实现疫情通定时自动填写功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • python pillow库的基础使用教程

    python pillow库的基础使用教程

    这篇文章主要介绍了python pillow库的基础使用教程,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2021-01-01
  • 自学python的建议和周期预算

    自学python的建议和周期预算

    在本篇文章中小编给大家分享了关于自学python的建议和周期预算,有兴趣的朋友们可以学习参考下。
    2019-01-01
  • Python爬虫实战之使用Scrapy爬取豆瓣图片

    Python爬虫实战之使用Scrapy爬取豆瓣图片

    在用Python的urllib和BeautifulSoup写过了很多爬虫之后,本人决定尝试著名的Python爬虫框架——Scrapy.本次分享将详细讲述如何利用Scrapy来下载豆瓣名人图片,需要的朋友可以参考下
    2021-06-06
  • python json-rpc 规范源码阅读

    python json-rpc 规范源码阅读

    这篇文章主要为大家介绍了python json-rpc 规范的源码阅读,以及jsonrpcclient与jsonrpcserver的实现示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • python Tkinter模块使用方法详解

    python Tkinter模块使用方法详解

    Python的GUI库非常多,之所以选择 Tkinter,一是最为简单,二是自带库,不需下载安装,随时使用,跨平台兼容性非常好,下面这篇文章主要给大家介绍了关于python Tkinter模块使用方法的相关资料,需要的朋友可以参考下
    2022-04-04
  • Python Lambda函数使用总结详解

    Python Lambda函数使用总结详解

    这篇文章主要介绍了Python Lambda函数使用总结详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • Python3 tkinter 实现文件读取及保存功能

    Python3 tkinter 实现文件读取及保存功能

    tkinter是一个跨平台的GUI库,开发的程序可以在win,linux或者mac下运行,tkinter是python自带的GUI库,是对图形库TK的封装。本文通过实例代码给大家介绍Python3 tkinter 实现文件读取及保存功能,感兴趣的朋友跟随小编一起看看吧
    2019-09-09
  • Python3使用tracemalloc实现追踪mmap内存变化

    Python3使用tracemalloc实现追踪mmap内存变化

    这篇文章主要为大家详细介绍了在Python3中如何使用tracemalloc实现追踪mmap内存变化,文中的示例代码讲解详细,感兴趣的可以了解一下
    2023-03-03
  • python 制作本地应用搜索工具

    python 制作本地应用搜索工具

    这篇文章主要介绍了python 制作本地应用搜索工具的方法,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下
    2021-02-02

最新评论