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语言编写电脑时间自动同步小工具
Mar 08 Python
python实现带验证码网站的自动登陆实现代码
Jan 12 Python
使用Python的Scrapy框架编写web爬虫的简单示例
Apr 17 Python
Python的SQLalchemy模块连接与操作MySQL的基础示例
Jul 11 Python
Python连接phoenix的方法示例
Sep 29 Python
对Python字符串中的换行符和制表符介绍
May 03 Python
利用python画出折线图
Jul 26 Python
Python字符串的常见操作实例小结
Apr 08 Python
Python将视频或者动态图gif逐帧保存为图片的方法
Sep 10 Python
Python银行系统实战源码
Oct 25 Python
pandas-resample按时间聚合实例
Dec 27 Python
Python中使用filter过滤列表的一个小技巧分享
May 02 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 编写的日历
2006/10/09 PHP
PHP 内存缓存加速功能memcached安装与用法
2009/09/03 PHP
php面向对象全攻略 (十一)__toString()用法 克隆对象 __call处理调用错误
2009/09/30 PHP
PHP实现基于3DES算法加密解密字符串示例
2018/08/24 PHP
PHP实现简单计算器小程序
2020/08/28 PHP
PHP基础之输出缓冲区基本概念、原理分析
2019/06/19 PHP
PHP使用phpunit进行单元测试示例
2019/09/23 PHP
Laravel 在views中加载公共页面的实现代码
2019/10/22 PHP
一个JS翻页效果
2007/07/23 Javascript
打造基于jQuery的高性能TreeView(asp.net)
2011/02/23 Javascript
初识JQuery 实例一(first)
2011/03/16 Javascript
利用Javascript判断操作系统的类型实现不同操作系统下的兼容性
2013/01/29 Javascript
js控制table合并具体实现
2014/02/20 Javascript
js 与 php 通过json数据进行通讯示例
2014/03/26 Javascript
jQuery获取选中内容及设置元素属性的方法
2014/07/09 Javascript
jQuery中parent()方法用法实例
2015/01/07 Javascript
Javascript 计算字符串在localStorage中所占字节数
2015/10/21 Javascript
jquery的ajax提交form表单的两种方法小结(推荐)
2016/05/25 Javascript
基于angularJS的表单验证指令介绍
2016/10/21 Javascript
webpack中使用iconfont字体图标的方法
2018/02/22 Javascript
vue.js 2.0实现简单分页效果
2019/07/29 Javascript
nodejs语言实现验证码生成功能的示例代码
2019/10/13 NodeJs
JS实现简易计算器
2020/02/14 Javascript
jQuery实现的解析本地 XML 文档操作示例
2020/04/30 jQuery
Python实现两个list求交集,并集,差集的方法示例
2018/08/02 Python
20行python代码的入门级小游戏的详解
2019/05/05 Python
Python OpenCV之图片缩放的实现(cv2.resize)
2019/06/28 Python
Tensorflow实现多GPU并行方式
2020/02/03 Python
HTML5之SVG 2D入门4—笔画与填充
2013/01/30 HTML / CSS
MCM英国官网:奢侈皮具制品
2017/04/18 全球购物
Kiwi.com中国:找到特价机票并发现新目的地
2019/10/27 全球购物
JAVA软件工程师测试题
2014/07/25 面试题
2015年营销工作总结范文
2015/04/23 职场文书
听证会主持词
2015/07/03 职场文书
申论不会写怎么办?教您掌握这6点思维和原则
2019/07/17 职场文书
MySQL数据库完全卸载的方法
2022/03/03 MySQL