Python中生成一个指定长度的随机字符串实现示例


Posted in Python onNovember 06, 2019

方法一:

定义一个函数,参数为所要生成随机字符串的长度。通过random.randint(a, b)方法得到随机数字,具体函数如下:

def generate_random_str(randomlength=16):
  """
  生成一个指定长度的随机字符串
  """
  random_str = ''
  base_str = 'ABCDEFGHIGKLMNOPQRSTUVWXYZabcdefghigklmnopqrstuvwxyz0123456789'
  length = len(base_str) - 1
  for i in range(randomlength):
    random_str += base_str[random.randint(0, length)]
  return random_str

测试下:

f = generate_random_str(24)
print (f)

得到结果:

gSY28gHCpTiL1yH0hO0uslM2

方法二:

方法一中我们采用将数字及字母罗列出来,并从中随机选择的方法进行生成,显得不够pythonic,方法二中我们采用string模块得到数字及字母,并通过列表生成式的方法得到结果。方法如下:

import random
import string

def generate_random_str(randomlength=16):
  """
  生成一个指定长度的随机字符串,其中
  string.digits=0123456789
  string.ascii_letters=abcdefghigklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
  """
  str_list = [random.choice(string.digits + string.ascii_letters) for i in range(randomlength)]
  random_str = ''.join(str_list)
  return random_str

测试下:

f = generate_random_str(24)
print (f)

得到结果:

aCIyZ9a06gN6UlBCmrjDfX4a

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现倒计时的示例
Feb 14 Python
常用python编程模板汇总
Feb 12 Python
Python实现选择排序
Jun 04 Python
python实现汉诺塔算法
Mar 01 Python
Python中如何导入类示例详解
Apr 17 Python
python读取.mat文件的数据及实例代码
Jul 12 Python
详解python常用命令行选项与环境变量
Feb 20 Python
Python基于requests库爬取网站信息
Mar 02 Python
在pycharm中创建django项目的示例代码
May 28 Python
pycharm中如何自定义设置通过“ctrl+滚轮”进行放大和缩小实现方法
Sep 16 Python
Python lxml库的简单介绍及基本使用讲解
Dec 22 Python
Django rest framework如何自定义用户表
Jun 09 Python
详解Python list和numpy array的存储和读取方法
Nov 06 #Python
python函数装饰器之带参数的函数和带参数的装饰器用法示例
Nov 06 #Python
Python list与NumPy array 区分详解
Nov 06 #Python
Django实现WebSSH操作物理机或虚拟机的方法
Nov 06 #Python
django 简单实现登录验证给你
Nov 06 #Python
Python数据可视化:箱线图多种库画法
Nov 06 #Python
使用Python完成15位18位身份证的互转功能
Nov 06 #Python
You might like
用PHP实现的随机广告显示代码
2007/06/14 PHP
附件名前加网站名
2008/03/23 PHP
php fsockopen伪造post与get方法的详解
2013/06/14 PHP
PHP提示Warning:phpinfo() has been disabled函数禁用的解决方法
2014/12/17 PHP
Web程序工作原理详解
2014/12/25 PHP
PHP的serialize序列化数据以及JSON格式化数据分析
2015/10/10 PHP
Laravel 实现在Blade模版中使用全局变量代替路径的例子
2019/10/22 PHP
cnblogs中在闪存中屏蔽某人的实现代码
2010/11/14 Javascript
js实现星星打分效果的方法
2020/07/05 Javascript
AngularJS中如何使用$http对MongoLab数据表进行增删改查
2016/01/23 Javascript
jQuery联动日历的实例解析
2016/12/02 Javascript
jQuery判断邮箱格式对错实例代码讲解
2017/04/12 jQuery
利用vue组件自定义v-model实现一个Tab组件方法示例
2017/12/06 Javascript
vue中的模态对话框组件实现过程
2018/05/01 Javascript
js实现导航跟随效果
2018/11/17 Javascript
react quill中图片上传由默认转成base64改成上传到服务器的方法
2019/10/30 Javascript
小程序自定义圆形进度条
2020/11/17 Javascript
常见的在Python中实现单例模式的三种方法
2015/04/08 Python
Python实现的根据文件名查找数据文件功能示例
2018/05/02 Python
Python 3.6打包成EXE可执行程序的实现
2019/10/18 Python
PYTHON发送邮件YAGMAIL的简单实现解析
2019/10/28 Python
django下创建多个app并设置urls方法
2020/08/02 Python
如何通过python计算圆周率PI
2020/11/11 Python
亚历山大·王官网:Alexander Wang
2017/06/23 全球购物
写clone()方法时,通常都有一行代码,是什么?
2012/10/31 面试题
顶碗少年教学反思
2014/02/21 职场文书
爱护草坪标语
2014/06/24 职场文书
招标保密承诺书
2015/01/20 职场文书
本溪关门山导游词
2015/02/09 职场文书
初中班主任教育随笔
2015/08/15 职场文书
入党转正申请自我鉴定
2019/06/25 职场文书
《语言的突破》读后感3篇
2019/12/12 职场文书
为什么node.js不适合大型项目
2021/04/28 Javascript
python状态机transitions库详解
2021/06/02 Python
Redis分布式锁Redlock的实现
2021/08/07 Redis
Vue.Draggable实现交换位置
2022/04/07 Vue.js