Я не знаю, является ли мой код самым элегантным, но мне приходилось решать это много раз в исследовательских целях. Если вы измените переменную
sub_nums
, вы можете ограничить число номеров, используемых в разделе.
def make_partitions(number):
out = []
tmp = []
sub_nums = range(1,number+1)
for num in sub_nums:
if num<=number:
tmp.append([num])
for elm in tmp:
sum_elm = sum(elm)
if sum_elm == number:
out.append(elm)
else:
for num in sub_nums:
if sum_elm + num <= number:
L = [i for i in elm]
L.append(num)
tmp.append(L)
return out
Вам нужен доступ к этому потоку из вашей программы, или вы просто хотите копировать с него звук? Во втором случае быстрый поиск в Google показал http: // www. ambrosiasw.com/utilities/wiretap/ и http://www.rogueamoeba.com/audiohijackpro/ . Однако ни один из них не является открытым или бесплатным.
Изменить - упс, вы хотите получить доступ программно, это отвечает на мой собственный вопрос, извините. Думаю, я сохраню здесь свой ответ на тот случай, если кто-то наткнется на эту страницу, желая записать звук непрограммно.
Вы Потребуется ваше приложение для установки расширения системы. Soundflower - это реализация такого расширения с открытым исходным кодом.