Python3基础-代码阅读系列—优惠码生成
代码展示
```
import random
# 生成200组长度为8的优惠码,字典集是数字加字母
def generate_key(number=200, length=8):
char_set = "abcdefghijklmnopqrstuvwxyz0123456789"
result = ""
for i in range(0, number):
temp = ""
while(temp == ""):
for j in range(0, length):
temp = temp+char_set[random.randint(0, 35)]
# 判断新生成的优惠吗是否与之前的重复
if(result.find(temp) == -1):
result = result + "%d " % (i+1) + temp
else:
temp = ""
result = result+'\n'
return result
def file_write():
fp = open("result.txt", 'w')
fp.writelines(generate_key())
fp.close()
if name == 'main':
file_write()
<h1 style="background-color:#FF69B4; font-family:verdana; font-size:25px; text-align:center; font-weight:bold; color:white; ">知识点理解</h1>
## random库
`random.randint(0,35)`随机数中使包括0和35,或者其中的一个。
在python中的`random.randint(a, b)`用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,生成的随机数n: **a <= n <= b**
print(random.randint(12, 20)) #生成的随机数n: 12 <= n <= 20
print(random.randint(20, 20)) #结果永远是20
print(random.randint(20, 10)) #该语句是错误的。因为下限必须小于上限
## 字符串的find()方法
String.find(字串) 方法检测字符串中是否包含子字符串str,如果指定 beg(开始) 和 end(结束) 范围,则检查是否包含在指定范围内。
如果包含子字符串返回开始的**索引值**
如果不包含字串则返回-1
## 循环结构
**内循环**:
生成包含8个字符的字符串,并且不重复,保存在结果result中
**外循环**:
功能是将内循环操作200次。
<h1 style="background-color:#FF69B4; font-family:verdana; font-size:25px; text-align:center; font-weight:bold; color:white; ">代码来源</h1>
[github](https://github.com/brightyu/python/blob/master/ShaoyuanLi/0001/0001.py)
Python3基础-代码阅读系列—优惠码生成的更多相关文章
- Python3基础-代码阅读系列—素数
生成素数代码展示 质数(prime number)又称素数,有无限个. 质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数. primenumber = [] upperlimit = 2 ...
- Map工具系列-03-代码生成BySQl工具使用说明
所有cs端工具集成了一个工具面板 -打开(IE) Map工具系列-01-Map代码生成工具说明 Map工具系列-02-数据迁移工具使用说明 Map工具系列-03-代码生成BySQl工具使用说明 Map ...
- java 随机数 优惠码 生成 随机字串
package test; import java.util.HashSet; import java.util.Random; import java.util.Set; public class ...
- Python3基础-特别函数(map filter partial reduces sorted)实例学习
1. 装饰器 关于Python装饰器的讲解,网上一搜有很多资料,有些资料讲的很详细.因此,我不再详述,我会给出一些连接,帮助理解. 探究functools模块wraps装饰器的用途 案例1 impor ...
- 代码收藏系列--php--生成简短唯一订单号(转载)
代码收藏系列--php--生成简短唯一订单号 /** * 生成商家交易单号 * <br />特点:不重复 * <br />示例: * <br />普通付款:arra ...
- 代码收藏系列--php--生成简短唯一订单号
/** * 生成商家交易单号 * <br />特点:不重复 * <br />示例: * <br />普通付款:array('shop_id'=>1,'prod ...
- idea字节码插件JClassLib——阅读JVM字节码
idea字节码插件JClassLib--阅读JVM字节码 生成字节码文件并查看 查看字节码文件的方式:javac 文件名.java 即可生成.class文件,但是这种方式不方便 java:是运行字节码 ...
- Python3练习题系列(08)——代码阅读方法及字典跳转表理解
问题:分析下面代码 cities['_find'] = find_city city_found = cities['_find'](cities, state) 分析过程: 一个函数也可以作为一个变 ...
- [WebKit内核] JavaScript引擎深度解析--基础篇(一)字节码生成及语法树的构建详情分析
[WebKit内核] JavaScript引擎深度解析--基础篇(一)字节码生成及语法树的构建详情分析 标签: webkit内核JavaScriptCore 2015-03-26 23:26 2285 ...
随机推荐
- jenkins持续集成:定时构建语法
构建位置:选择或创建工程_设置_构建触发器 1. 定时构建语法:* * * * * (五颗星,多个时间点,中间用逗号隔开)第一个*表示分钟,取值0~59第二个*表示小时,取值0~23第三个*表示一个月 ...
- linux安装MongoDB
安装 32bit的mongodb最大只能存放2G的数据,64bit就没有限制 到官网,选择合适的版本下载,本次下载3.4.0版本 解压 tar -zxvf mongodb-linux-x86_64-u ...
- ORACLE EHCC(exadata hybrid columnar compression)
目录: 1. 简介 2. 压缩方式及压缩比 3. 压缩哪些数据 4. 可能有用的脚本 一.简介 EHCC(Exadata Hybrid Columnar Compression),是Oralce 数据 ...
- 饮冰三年-人工智能-linux-02 初始Linux
参考博客:https://www.cnblogs.com/linhaifeng/articles/6045600.html 1:初始Linux命令 右击,开启终端,或者ctrl+alt[F1-F6]的 ...
- SqlServerHelp
using System; using System.Collections.Generic; using System.Reflection; using System.Text; using Sy ...
- 发送Json数据,WebApi查看时为Null的问题(已解决)
1. PostMan :发送请求的Body中选择form-data是不行的.,body中的内容也要选择raw json格式. 2.如果是代码中填写的对象,api中解析为null,说明字段的值未对 ...
- es6 模板字符串
模板字符串 提供构造字符串的语法糖,在 Prel/python 等语言中也都有类似特性. 1.反引号模板,可以换行 2.反引号模板,可以嵌套 用+``来嵌套 好处:语法更加简洁 var name=&q ...
- kickstart-F
A题 Anagrams字符串是指两个字符串中都出现相同的字母且这些字母出现的次数相同. 小数据完全可以暴力,遍历A的子串,遍历B的子串,通过bool f(i,j,k,l)计算A[i,j], B[k,l ...
- POJ 2243 简单搜索 (DFS BFS A*)
题目大意:国际象棋给你一个起点和一个终点,按骑士的走法,从起点到终点的最少移动多少次. 求最少明显用bfs,下面给出三种搜索算法程序: // BFS #include<cstdio> #i ...
- The connection string 'MysqlEF' in the application's configuration file does not contain the require异常
在学习EF core first 对接mysql时,出现了这个异常. 原因是:连接字符串中缺少providerName="MySql.Data.MySqlClient" <a ...