Python 随机数;将列表转换为字符串

Python 随机数;将列表转换为字符串,python,string,list,random,numbers,Python,String,List,Random,Numbers,我的任务是以抛硬币的形式制作一个随机数发生器。由于这是一个入门类,在本学期的这一点上,我只允许使用某些内置函数。讲师给我们的一个链接帮助我理解了生成该列表所用的当前代码。以下是用于生成列表的代码: userin = int(input("enter the number of coin flips: ") coin = ['H', 'T'] userlist = (random.choices((coin), k=userin)) 现在,我将随机生成的列表存储到userlist中,因为我还要将

我的任务是以抛硬币的形式制作一个随机数发生器。由于这是一个入门类,在本学期的这一点上,我只允许使用某些内置函数。讲师给我们的一个链接帮助我理解了生成该列表所用的当前代码。以下是用于生成列表的代码:

userin = int(input("enter the number of coin flips: ")
coin = ['H', 'T']
userlist = (random.choices((coin), k=userin))

现在,我将随机生成的列表存储到
userlist
中,因为我还要将其打印为列表。看起来很简单。我试着将其打印为列表,但我假设,由于我以这种方式编码,它将始终以列表格式打印。我知道这很简单,之后的目标将需要更多的工作,但我的思想一直停留在这一点上。我最终将不得不计算生成了多少个“头”和“尾”,从而得到字符串。

我认为您要寻找的是与此类似的东西:

import random

try:
    userin = int(input("Enter the number of desired coin flips: "))

except ValueError:
    print("Invalid Input")

coin = ['H', 'T']
userlist =(random.choices((coin), k=userin))

print('You flipped '  + str(userlist.count('H')) + ' Heads and ' + str(userlist.count('T')) + ' Tails.')

print(userlist)

k=""

for x in range(0, len(userlist)):

    k=str(k) +"" + str(userlist.pop())

print(k)

这是假设您只想打印抛硬币的结果。在开始处添加了一个try循环,以防未输入整数。请确保导入random,以便它也能正常工作,并在输入语句末尾添加缺少的括号。使用list.count()函数查找userlist中T或H的数量。另外,在打印中使用str()也可以。希望这能达到你的目的。

我不明白问题是什么。请明确说明您要问的问题。如果您想将列表转换为字符串,可以使用
s=“”.join(userlist)
。例如,您可以使用内置函数计算头数:
count('H')
谢谢您的回复。对不起,这个问题太复杂了。我主要是问如何将列表转换成字符串并打印、操作等等。但由于某种原因,我无法使用str()函数,我认为这是可行的。我还认为我的指导老师将不允许使用.join()函数,但现在我看不到其他方法。再次感谢,谢谢查尔斯!我喜欢你用来计算正面和反面数量的计数方法。作业要求打印列表和打印字符串,出于某种原因,在尝试之前的内容时,它只打印了两个列表,而不是“列表”和“字符串”。(这是在使用str(userlist))不管出于什么原因,它只打印相同的内容。@relytkadReh单独打印userlist和with str(userlist)应该只返回相同的内容。我的例子解决了你的问题了吗?或者你能澄清一下你在寻找什么吗?在某种程度上。我希望它看起来像这样:['H','H','H','T']和HHHT。但是当使用str(userlist)时,它仍然将其打印为一个列表。我之所以再次提出这个问题,是因为正如我所说,我认为讲师不会接受.join()方法。但不管怎样,我们非常感谢您的帮助。@relytkadReh编辑了我的代码,所以现在它应该对您有用了。刚刚创建了一个新字符串,并将列表中的字符串单独添加到新字符串中。但是,此代码在返回列表值后不会保存这些值。让我知道它是否有效。:)谢谢,谢谢!!你帮了我。我一直在修补下一部分,这是通过随机生成的字符串移动,并找到H和T的最长运行模式。我不想让你替我做这个作业,但如果你想考虑一下,我会很感激你继续谈话。