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多线程和队列管理shell程序
Aug 04 Python
Python字符串处理实例详解
May 18 Python
Python列表list内建函数用法实例分析【insert、remove、index、pop等】
Jul 24 Python
python如何读写json数据
Mar 21 Python
Python使用OpenCV进行标定
May 08 Python
Python实现对文件进行单词划分并去重排序操作示例
Jul 10 Python
Django文件存储 自己定制存储系统解析
Aug 02 Python
Python 私有化操作实例分析
Nov 21 Python
使用python绘制cdf的多种实现方法
Feb 25 Python
Python Django view 两种return的实现方式
Mar 16 Python
Python脚本导出为exe程序的方法
Mar 25 Python
keras的三种模型实现与区别说明
Jul 03 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
php生成短网址示例
2014/05/05 PHP
discuz目录文件资料汇总
2014/12/30 PHP
php基于闭包实现函数的自调用(递归)实例分析
2016/11/11 PHP
一个对于Array的简单扩展
2006/10/03 Javascript
checkbox 多选框 联动实现代码
2008/10/22 Javascript
Jquery在IE7下无法使用 $.ajax解决方法
2009/11/11 Javascript
extJs 常用到的增,删,改,查操作代码
2009/12/28 Javascript
jQuery.autocomplete 支持中文输入(firefox)修正方法
2011/03/10 Javascript
Extjs中的GridPanel隐藏列会显示在menuDisabled中解决方法
2013/01/27 Javascript
超实用的JavaScript表单代码段
2016/02/26 Javascript
JavaScript编写点击查看大图的页面半透明遮罩层效果实例
2016/05/09 Javascript
深入理解jQuery中的事件冒泡
2016/05/24 Javascript
Bootstrap 模态框实例插件案例分析
2016/12/28 Javascript
原JS实现banner图的常用功能
2017/06/12 Javascript
微信小程序使用scroll-view标签实现自动滑动到底部功能的实例代码
2018/11/09 Javascript
详解Express笔记之动态渲染HTML(新手入坑)
2018/12/13 Javascript
JavaScript数组去重的方法总结【12种方法,号称史上最全】
2019/02/28 Javascript
详解vue配置后台接口方式
2019/03/29 Javascript
ES6的异步终极解决方案分享
2019/07/11 Javascript
使用jQuery实现掷骰子游戏
2019/10/24 jQuery
原生js滑动轮播封装
2020/07/31 Javascript
javascript实现贪吃蛇游戏(娱乐版)
2020/08/17 Javascript
nuxt 自定义 auth 中间件实现令牌的持久化操作
2020/11/05 Javascript
8个非常实用的Vue自定义指令
2020/12/15 Vue.js
Python中的模块导入和读取键盘输入的方法
2015/10/16 Python
Python单向链表和双向链表原理与用法实例详解
2018/08/31 Python
执行Django数据迁移时报 1091错误及解决方法
2019/10/14 Python
Python上下文管理器全实例详解
2019/11/12 Python
python修改linux中文件(文件夹)的权限属性操作
2020/03/05 Python
乐高奥地利官方商店:LEGO Shop AT
2019/07/16 全球购物
小学生元旦广播稿
2014/02/21 职场文书
文化建设工作方案
2014/05/12 职场文书
副总经理任命书
2014/06/05 职场文书
党支部群众路线整改措施思想汇报
2014/10/10 职场文书
酒吧七夕情人节宣传语
2015/11/24 职场文书
南阳市白酒市场的调查报告
2019/11/08 职场文书