定义一个类:实现功能可以返回随机的10个数字,随机的10个字母, 随机的10个字母和数字的组合;字母和数字的范围可以指定,类似(1~100)(A~z)
#习题2:定义一个类:实现功能可以返回随机的10个数字,随机的10个字母,
#随机的10个字母和数字的组合;字母和数字的范围可以指定 class RandomString(): #随机数选择的范围作为参数,如(1~100)字母 ('A'~'z'),大写字母在前 按ascii值排列先后
def __init__(self,start_num=0,end_num=100,start_alpha='A',end_alpha='z'):
import string
if not isinstance(start_num,int) or not isinstance(end_num,int) or \
not isinstance(start_alpha,str) or not isinstance(end_alpha,str) or \
(start_alpha not in string.ascii_letters or end_alpha not in string.ascii_letters):
print('参数类型错误,请重新输入!')
return None
self.start_num=start_num
self.end_num=end_num
self.start_alpha=start_alpha
self.end_alpha=end_alpha #生成要求数量随机数字,num 随机数的数量
def random_digits(self,num):
print('self.start_num,self.end_num:',self.start_num,self.end_num)
if not isinstance(num,int):
print('数字类型输入错误,请重新输入')
return None
from random import randint
num_list=[]
for i in range(num):
num_list.append(randint(self.start_num,self.end_num))
return num_list #生成要求数量随机字母,大小写混合
def random_letters(self,num):
if not isinstance(num,int):
print('数字类型输入错误,请重新输入')
return None
from random import randint
import string
all_letters=string.ascii_uppercase+string.ascii_lowercase
start_position=all_letters.find(self.start_alpha)
end_position=all_letters.find(self.end_alpha)
if start_position>end_position:
start_position,end_position=end_position,start_position letters_list=[]
for i in range(num):
letters_list.append(string.ascii_letters[randint(start_position,end_position)])
return letters_list def random_digits_letters(self,num):
digits_string=list(range(self.start_num,self.end_num+1))
print('digits_string',digits_string)
import string
all_letters=string.ascii_uppercase+string.ascii_lowercase
print('all_letters',all_letters)
print('self.start_alpha',self.start_alpha)
print('self.end_alpha',self.end_alpha)
start_position=all_letters.find(self.start_alpha)
end_position=all_letters.find(self.end_alpha)
letters_string=list(all_letters[start_position:end_position+1])
print('letters_string',letters_string) from random import choice
all_string=digits_string+letters_string
print('all_string',all_string)
all_list=[]
for i in range(num): all_list.append(choice(all_string))
return all_list randomdigitalpha=RandomString(2,100,'W','e') #
print(randomdigitalpha.start_num)
print(randomdigitalpha.random_digits(10)) print(randomdigitalpha.random_letters(5)) print(randomdigitalpha.random_digits_letters(15))
定义一个类:实现功能可以返回随机的10个数字,随机的10个字母, 随机的10个字母和数字的组合;字母和数字的范围可以指定,类似(1~100)(A~z)的更多相关文章
- Java TreeSet集合排序 && 定义一个类实现Comparator接口,覆盖compare方法 && 按照字符串长度排序
package TreeSetTest; import java.util.Iterator; import java.util.TreeSet; import javax.management.Ru ...
- JAVA 类的定义(定义一个类,来模拟“学生”)
package Code413;/*定义一个类,来模拟“学生”属性 (是什么) 姓名 年龄行为(能做什么) 吃饭 睡觉 学习对应到Java的类当中 成员变量(属性) String nanme; //姓 ...
- 怎样用Javascript定义一个类
其实Javascript中没有类这个定义,但是有类这个概念.很多人都写过这样的代码,对,没错,就是如下代码,清晰的不能再清晰了,就是一个关键字 function,然后定义一个方法名,方法名后紧跟一对括 ...
- Python3.x:定义一个类并且调用
Python3.x:定义一个类并且调用 1,定一个类Shrjj(其中有属性:name, jjzt,fbsjj,etf,lof,fjlof): class Shrjj(object): def __in ...
- 103-PHP定义一个类
<?php class ren{ //定义人类 } class mao{ //定义猫类 } new ren(); //实例化人类 new mao(); //实例化猫类 new mao(); // ...
- 用es6的class关键字定义一个类
es6新增class关键字使用方法详解. 通过class关键字,可以定义类.基本上,ES6的class可以看作只是一个语法糖,它的绝大部分功能,ES5都可以做到,新的class写法只是让对象原型的写法 ...
- 定义一个类Point,代表一个点,public属性有x和y,方法有显示点坐标 show(),构造函数有两个参数分别给x,y赋值,在main方法中构造两个对象,再创建一方法(getMiddle)为取两个点构成线段的中点的坐标,参数为2个点对象,调用此方法后得到一个新的点,编写Application,显示该对象的坐标值。
这个题让我更加明白了类创建对象的实质 代码中用到:1.对象作形参;2.对象作返回值 以下用代码具体分析: class Point1{ public double x; public double y; ...
- 按要求编写一个Java应用程序: (1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。 (2)编写一个类,继承自矩形类,同时该类描述长方体,具有长、宽、高属性, 和计算体积的方法。 (3)编写一个测试类,对以上两个类进行测试,创建一个长方体,定义其长、 宽、高,输出其底面积和体积。
package jvxing; public class Jvxing { //成员变量 private double width; private double chang; public doub ...
- 28.按要求编写一个Java应用程序: (1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。 (2)编写一个类,继承自矩形类,同时该类描述长方体,具有长、宽、高属性, 和计算体积的方法。 (3)编写一个测试类,对以上两个类进行测试,创建一个长方体,定义其长、 宽、高,输出其底面积和体积。
//矩形父类 package d922A; public class Rect { private double l,w; Rect(double c,double k) { l=c; w=k; } ...
随机推荐
- gd库的相关内容
gd库注意事项 对于乱码问题 在php里面包含 header("content-type:image/png"); 这样输出的图像就不会乱码了后面跟的Png也可以改变为自己想要输出 ...
- HTML5+CSS3系列教程——如何制作简单按钮笔记
1.按钮的制作方式 用图片(目前用的不多) 纯CSS a标签 input 图片二决定了input的类型 当input的type属性是submit button等这些的时候他呈现一个按钮 butto ...
- golang web框架 beego 学习 (五) 配置文件
app.conf: appname = gowebProject httpport = runmode = dev copyrequestbody = true [db] host= localhos ...
- 【VS开发】【数据库开发】windows下libevent x64库静态编译
按照libevent的文档,使用VC的nmake -f Makefile.nmake即可编译32位release模式.因为项目中要求编译64位的版本,需要在Makefile.nmake中添加一个LIB ...
- 【miscellaneous】gstreamer构建的简单方法
在博文"Gstreamer在Ubuntu上的安装和MP3的播放"中,写了在ubuntu上从头到尾构建gstreamer的详细过程,那是我在一次小项目培训中和队友一起努力了将近一周的 ...
- Django项目-简易博客系统(附源码) --Python Web
Django入门级项目: 链接:https://pan.baidu.com/s/13Z7v-gky6Xgka-Gom8-HQQ 提取码:uagu
- 25.Spark下载源码和安装和使用
安装scala 上传安装包 解压 配置scala相关的环境变量 export SCALA_HOME=/opt/modules/scala-2.11.4 export PATH=$PATH:$SCALA ...
- JVM -- 虚拟机中的对象
一.HotSpot虚拟机 它是Sun JDK和OpenJDK中所带的虚拟机,也是目前使用范围最广的Java虚拟机.我们大致知道虚拟机内存的概况,也许更想了解这些虚拟机内存的数据的其他细节,誓如它们是如 ...
- C++视频读取与视频保存
VideoCapture cap("E:\\122.avi"); //计算视频帧数 int VedioFPS = cap.get(CV_CAP_PROP_FPS); //cout ...
- python中检测某个变量是否有定义
目录 第一种方法使用内置函数locals() 第二种方法使用内置函数dir() 第三种方法使用内置函数vars() 第一种方法使用内置函数locals() 'testvar' in locals(). ...