python:在指定范围内按学号随机生成座位顺序,并分行输出

我是一名大一新生,也是python小白。

专业课让我接触到了python,一下就迷住了。对于各种库,各种函数都贼感兴趣。

这次因为座位需要随机分布,我就第一时间想到了用python来实现。

以下便是我想到的方法,因为随机,所以用random来实现。再用到sample函数来在范围里指定随机多少个数,再转为字符串。因为要分行打印,所以再利用切片来做到分行。

import random
StudentID = range(1, 54)
a = random.sample(StudentID, 53)
b = str(a)
b = b.replace(",", "|").replace(" ", "")
print(b.split("|")[:10])
print(b.split("|")[10:20])
print(b.split("|")[20:30])
print(b.split("|")[30:40])
print(b.split("|")[40:50])
print(b.split("|")[50:])
print(b)

打印后的结果是这样的:
我们教室一排10个座位,因此10个为一行打印输出
这些代码我总感觉不是那么的好,于是便请教了我的老师。老师说用for循环可能会更好,于是便有了下面一段代码:

import random
def printStudentId():
    StudentId = range(1, 54)
    listId = random.sample(StudentId, 53)
    for i in range(0, len(listId), 10):
        print(listId[i:i+10])
printStudentId()

这段代码看着就舒服多了,也很简洁。定义了一个函数,然后按照长度来打印输出。感觉就比上面那一段代码好多了,每次遇到实在想不明白的东西,就会请教我的老师。哈哈哈,太棒了!

python真是个奇妙的东西,我一定会好好努力学习的。

冲冲冲!

  • 12
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值