Python3 实现随机生成一组不重复数并按行写入文件


Posted in Python onApril 09, 2018

笔主在做一个项目要生成一组随机有序的整型数字,并按行输出到文本文件使用,恰好开始学习Python3,遂决定直接使用Python3解决

思路:与随机数相关的函数都要使用到random这个系统库,查看相关的开发文档发现random库下面有个sample(seq,n)函数比较符合,能在在一个序列中随机选择n个不重复的数,并返回一个list,接下来就是将一个list按行输出到一个文本文件中

过程:

1、导入random库

import random

2、生成一个自己自己想要的范围的序列,笔者是需要在1~300000随机选择900个数字,遂想使用range()函数生成一个序列,但是在使用的过程就懵逼了,例如range(1,100),返回的不是一个list,直接返回range(),经过查阅开发文档才 发现python2中的range返回的是一个list,python3中的range返回的是一个迭代值,for i in range(1,10)在python2和python3中均可以使用,但是要生成1-100的列表,就需要用list(range(1,100))。

(在不清楚Python2和Python3的一些函数和语法的差别时常因此而走不少弯路,希望和我一样的初学者在学习Python时要时常注意这一点),于是生成范围序列:

seq = list(range(1,300000))

3、接着即使用sample()函数生成一个随机序列:

sample在帮助文档的解释:random.sample(population,k)

Return a k length list of unique elements chosen from the population sequence or set. Used forrandom sampling without replacement.

a = random.sample(seq,900)

4、然后再对输出的list排下序(如果有需要的话,否则可以省略这一步):

a.sort()

5、写入文件,因为要换行输出所以输出前需要对list进行处理加入换行符

R='\n'.join(str(i) for i in a)

6、写入到文件

open('test.txt','w').write(R)

总结:

Python作为一门解释型语言相对自己之前经常使用的C/C++相对要方便,相对简单的工作直接在bash或者CMD下可直接使用,方便快捷,可以提高工作效率。

以上这篇Python3 实现随机生成一组不重复数并按行写入文件就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python描述器descriptor详解
Feb 03 Python
Python脚本实现格式化css文件
Apr 08 Python
通过Python来使用七牛云存储的方法详解
Aug 07 Python
用python写个自动SSH登录远程服务器的小工具(实例)
Jun 17 Python
Python continue继续循环用法总结
Jun 10 Python
Python实现多线程的两种方式分析
Aug 29 Python
matplotlib实现区域颜色填充
Mar 18 Python
python+selenium 鼠标事件操作方法
Aug 24 Python
python 实现将小图片放到另一个较大的白色或黑色背景图片中
Dec 12 Python
200行python代码实现贪吃蛇游戏
Apr 24 Python
python exit出错原因整理
Aug 31 Python
利用python调用摄像头的实例分析
Jun 07 Python
python生成不重复随机数和对list乱序的解决方法
Apr 09 #Python
解决Python的str强转int时遇到的问题
Apr 09 #Python
Python利用matplotlib.pyplot绘图时如何设置坐标轴刻度
Apr 09 #Python
Python序列循环移位的3种方法推荐
Apr 09 #Python
python中将一个全部为int的list 转化为str的list方法
Apr 09 #Python
python修改list中所有元素类型的三种方法
Apr 09 #Python
python 获取list特定元素下标的实例讲解
Apr 09 #Python
You might like
这部番真是良心,画质好到像风景区,剧情让人跟着小公会热血沸腾
2020/03/10 日漫
十天学会php之第一天
2006/10/09 PHP
phpfans留言版用到的数据操作类和分页类
2007/01/04 PHP
PHP内置过滤器FILTER使用实例
2014/06/25 PHP
ThinkPHP5 验证器的具体使用
2018/05/31 PHP
小议javascript 设计模式 推荐
2009/10/28 Javascript
js创建数据共享接口——简化框架之间相互传值
2011/10/23 Javascript
ASP.NET jQuery 实例16 通过控件CustomValidator验证RadioButtonList
2012/02/03 Javascript
JS动态添加option和删除option(附实例代码)
2013/04/01 Javascript
js字符串转换成数字与数字转换成字符串的实现方法
2014/01/08 Javascript
浅谈JS封闭函数、闭包、内置对象
2017/07/18 Javascript
javascript cookie的基本操作(添加和删除)
2017/07/24 Javascript
jQuery实现的简单获取索引功能示例
2018/06/04 jQuery
快速解决bootstrap下拉菜单无法隐藏的问题
2018/08/10 Javascript
解决vue项目使用font-awesome,build后路径的问题
2018/09/01 Javascript
微信小程序缓存过期时间的使用详情
2019/05/12 Javascript
javascript实现一款好看的秒表计时器
2020/09/05 Javascript
python接口自动化测试之接口数据依赖的实现方法
2019/04/26 Python
Python如何基于selenium实现自动登录博客园
2019/12/16 Python
python用TensorFlow做图像识别的实现
2020/04/21 Python
Python os库常用操作代码汇总
2020/11/03 Python
HTML5实时语音通话聊天MP3压缩传输3KB每秒
2019/08/28 HTML / CSS
苹果Mac升级:MacSales.com
2017/11/20 全球购物
Rag & Bone官网:瑞格布恩高级成衣
2018/04/19 全球购物
自荐信需注意事项
2014/01/25 职场文书
暑期社会实践方案
2014/02/05 职场文书
会计专业应届生自荐信
2014/02/07 职场文书
降消项目实施方案
2014/03/30 职场文书
小学语文课后反思精选
2014/04/25 职场文书
公司收款委托书范本
2014/09/20 职场文书
2014领导班子专题民主生活会对照检查材料思想汇报
2014/09/23 职场文书
2015年体育教师个人工作总结
2015/05/12 职场文书
2015秋季幼儿园开学通知
2015/07/16 职场文书
承诺书怎么写 ?
2019/04/16 职场文书
《最终幻想14》6.01版本4月5日推出 追加新任务新道具
2022/04/03 其他游戏
什么是css原子化,有什么用?
2022/04/24 HTML / CSS