我正在尝试制作一个简单的脚本,其中包含两个不同的两个短语行(Python)

2024-09-30 20:26:41 发布

您现在位置:Python中文网/ 问答频道 /正文

所以,我刚刚开始编写Python,我想做一个非常简单的脚本,比如“Gabe-你好,我的名字是Gabe”(只是一个句子的例子“+”Jerry-你好Gabe,我是Jerry“或”Gabe-再见,Jerry“+”Jerry-再见,Gabe“。这就是我写的。你知道吗

 answers1 = [
"James-Hello, my name is James!"
]
answers2 = [
    "Jerry-Hello James, my name is Jerry!"
    ]
answers3 = [
    "Gabe-Goodbye, Samuel."
        ]
 answers4 = [
    "Samuel-Goodbye, Gabe"
    ]
Jack1 = (answers1 + answers2)
Jack2 = (answers3 + answers4)
Jacks = ([Jack1,Jack2])
import random
for x in range(2):
    a = random.randint(0,2)
    print (random.sample([Jacks, a]))

我很确定这是一个非常简单的修复,但是由于我刚刚开始使用Python(比如,实际上是2-3天前),我不太清楚问题会是什么。这是我的错误信息

Traceback (most recent call last):
File "C:/Users/Owner/Documents/Test Python 3.py", line 19, in <module>
print (random.sample([Jacks, a]))
TypeError: sample() missing 1 required positional argument: 'k'

如果有人能帮我,我会非常感激的!除此之外,我将寻找与修复此问题相关的方法。你知道吗


Tags: samplenamehelloismyrandomsamueljames
3条回答
random.sample([Jacks, a])

这个sample方法应该是

random.sample(Jacks, a)

不过,我很高兴你也不知道清单是如何运作的。你能解释一下为什么使用字符串列表,然后在其中添加值吗?我要失去你了。你知道吗

如果要选择一对或字符串,请使用Florian描述的方法(按index值请求数据)

问题是sample需要一个参数k,该参数指示要采集多少随机样本。但是在本例中,似乎不需要sample,因为您已经有了随机整数。注意,整数应该在[0,1]范围内,因为列表Jack只有两个元素。你知道吗

    a = random.randint(0,1)
    print (Jacks[a])

或与sample相同的行为,请参见here以获取解释。你知道吗

   print (random.sample(Jacks,1))

希望这有帮助!你知道吗

k参数告诉随机抽样函数表示您需要多少个样本,您应该写:

 print (random.sample([Jacks, a], 3))

也就是说你需要从你的清单上取3个样品。输出类似于:

[1, jacks, 0]

相关问题 更多 >