设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
楼主: crossin先生
打印 上一主题 下一主题

【每日一坑 1】 随机取数

  [复制链接]

0

主题

0

好友

8

积分

新手上路

Rank: 1

85#
发表于 2018-2-23 15:25:06 |只看该作者
# coding uft-8

import random

m = int(raw_input("How many numbers do you want?"))
n = int(raw_input("1-?"))
i = random.sample(range(1, n+1), m)
print sorted(i)
回复

使用道具 举报

4

主题

0

好友

98

积分

注册会员

Rank: 2

84#
发表于 2018-2-22 18:08:40 |只看该作者
#!/usr/bin/python
# -*- coding: UTF-8 -*-

from random import randint
n = int(input("请输入抽取上限n:"))
i = m = int(input("请输入抽取的次数m:"))
res=[]
while i:
    num=randint(1,n)
    res.append(num)
    i-=1
print ('从(1,%d)中随机抽取%d次的结果为:%s\n'%(n,m,res))
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

83#
发表于 2018-2-22 13:04:38 |只看该作者
wwyy4ever 发表于 2018-2-22 10:33
老师,可以讲解一下return sorted(random.sample(, int(m)))中括号里那部分内容吗?
改成return sorted(ran ...

是的,可以。
不过你中间少半个括号
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

2

主题

0

好友

60

积分

注册会员

Rank: 2

82#
发表于 2018-2-22 10:33:42 |只看该作者
本帖最后由 wwyy4ever 于 2018-2-22 10:55 编辑

老师,可以讲解一下return sorted(random.sample([i for i in xrange(1,int(n)+1)], int(m)))中括号里那部分内容吗?
改成return sorted(random.sample(range(1,int(n)+1), int(m)))可以吧
回复

使用道具 举报

0

主题

0

好友

16

积分

新手上路

Rank: 1

81#
发表于 2017-10-4 17:20:34 |只看该作者
  1. # -*- coding:utf-8 -*-
  2. '''
  3. 题目:
  4. 从1~n中,随机取m个数。1 <= m <= n
  5. '''
  6. import random

  7. print 'list_n = [1,2,3,4,5,6,7,8,9,0]'
  8. print 'plz input the value of m(0<=m<=10):'
  9. m = input()
  10. list_n = [1,2,3,4,5,6,7,8,9,0]
  11. list_m = random.sample(list_n,m)

  12. print list_m
复制代码
回复

使用道具 举报

3

主题

0

好友

53

积分

注册会员

Rank: 2

80#
发表于 2017-9-18 14:08:10 |只看该作者
import random

print '请输入两个数,符合n>m>=1的规则:'
m=input('请输入一个数m:')
n=input('请输入一个更大的数n:')
ln=[]
lm=[]
for ln_init in range(1,n+1):
    ln.append(ln_init)
    ln_init +=1
if n>=m>=1:
    lm=random.sample(ln,m)
    print lm,ln
else:
    print '是否符合规则n>=m>=1?'
回复

使用道具 举报

0

主题

0

好友

8

积分

新手上路

Rank: 1

79#
发表于 2017-9-4 12:40:06 |只看该作者
我也来贴个
def choice(n,m):
        list1=range(1,n+1)
        list1.reverse()
        list2=[]
        pos=1
        while len(list2)<m:
              pos=randint(1,n)
              num=list1[pos-1]
              if not(num in list2):
                 list2.append(num)
                 
        list2.sort()
        return list2
i=0
while i<10:   
     print choice(33,6)
     i+=1
     
回复

使用道具 举报

0

主题

0

好友

4

积分

新手上路

Rank: 1

78#
发表于 2017-8-21 14:00:35 |只看该作者
import random
import re
n0=input('input n:')
m0=input('input m:')
mm=[]
if re.match(r'\d+',n0) and re.match(r'\d+',m0):
        n=int(n0)
        m=int(m0)
        if 1<=m<=n:
                while len(mm)<m:
                        a=random.randint(1,n)
                        if a in mm:
                                pass
                        else:
                                mm.append(a)
        else:
                print('wrong input,exit')
print(mm)
回复

使用道具 举报

0

主题

0

好友

6

积分

新手上路

Rank: 1

77#
发表于 2017-8-20 15:03:42 |只看该作者
刚开始入门 老师多指导~~

# -*- coding: cp936 -*-
import random
m=input('请输入最小值:')
n=input('请输入最大值:')
x=input('请输入数量:')
i=1
for i in range (1,x+1):
    num=random.randint(m,n)
    i=i+1
    print num
回复

使用道具 举报

1

主题

0

好友

39

积分

新手上路

Rank: 1

76#
发表于 2017-8-17 18:26:00 |只看该作者
# -*-coding:utf-8-*-
# 从m 个数字随机徐拿出n个数字
import random
import sys

def getRandomNumber(mm, nn):
    """
返回1到m之间的n个数字
    :param m:
    :param n:
    :return:
    """
    sourceList = range(1, mm + 1)
    print random.sample(sourceList, nn)

def inputM():
    """
输入m的值,并且对输入的m值进行判断
    """
    try:
        global m
        m = input("请输入m的值:")
        if m <= 2:
            print "请输入一个大于2的数字"
            sys.exit()
    except:
        print "请输入数字"
        sys.exit()

def inputN():
    """
输入n的值,并对n进行判断
    """
    try:
        global n
        n = input("请输入n的值:")
        if n < 1 or n >= m:
            print "n的取值范围只能大于等于1小于m"
            sys.exit()
    except:
        print "请输入数字"
        sys.exit()

inputM()
inputN()
getRandomNumber(m, n)



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-5-17 17:20 , Processed in 0.019145 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部