lsmCC 发表于 2022-9-22 17:19:21

课后作业第六讲没有懂

import random

red = random.sample(range(1, 34), 6)
blue = random.randint(1, 16)

print("开奖结果是:", *red)
print("特别号码是:", blue)
为什么red前有一个*号而下面blue却没有呢,有什么含义吗

jackz007 发表于 2022-9-22 17:24:53

本帖最后由 jackz007 于 2022-9-22 17:27 编辑

       red 是一个列表,前面添加了 '*' 后,打印的时候,就会只打印元素,不会输出括号和逗号。
       你自己可以试一试,看看 red 前面加与不加 * 时,输出结果有什么区别。

Brick_Porter 发表于 2022-9-22 17:35:11

如楼上所说,random.sample函数的返回值是一个列表,不加星号就是把列表中的数字看成是一个整体,也就是前面强调的一个这个概念。加上星号的意思是解包,把列表中的元素看成一个一个的独立元素。

用代码演示就是这样的:>>> print()# 输出“一个”列表

>>> print(*)# 输出列表中的每一个元素
1 2 3
页: [1]
查看完整版本: 课后作业第六讲没有懂