我正在尝试创建一个短脚本,其中选择了可用列表中的5个随机数,然后显示每个。我遇到的问题是我追加结果的列表也会返回一个列表,而不是整数或字符串。这是代码:
def randomStar(self):
choice = [5,4,3]
probability = [0.1, 0.2, 0.7]
star = random.choices(choice, probability)
return star
multi = []
characters = []
for x in range(5):
star = randomStar(x)
multi.append(star)
x += 1
for star in multi:
characters.append(star)
print (characters)
print (multi)
多个和字符列表都返回:
['[3]', '[3]', '[3]', '[5]', '[3]']
因此,当我尝试遍历“Multi”列表时,我仍然会获得列表。我怎样才能获得这些值?或者我将数字附加到列表中的方式不正确?
感谢。
答案 0 :(得分:2)
它们是列表,因为return star[0]
返回" k大小的元素列表"。
由于列表中只有一个元素,而这正是您要返回的内容,您只需要编写import scipy
# Read the .wav file
sample_rate, data = scipy.io.wavfile.read('directory_path/file_name.wav')
# Spectrogram of .wav file
sample_freq, segment_time, spec_data = signal.spectrogram(data, sample_rate)
# Note sample_rate and sampling frequency values are same but theoretically they are different measures
。