Blocks of Python code, and indeed entire scripts, can be embedded in Csound orchestras using the {{ and }} directives to enclose the script, as follows:
sr=44100 kr=4410 ksmps=10 nchnls=1 pyinit giSinusoid ftgen 0, 0, 8192, 10, 1 pyruni {{ import random pool = [(1 + i/10.0) ** 1.2 for i in range(100)] def get_number_from_pool(n, p): if random.random() < p: i = int(random.random() * len(pool)) pool[i] = n return random.choice(pool) }} instr 1 k1 oscil 1, 3, giSinusoid k2 pycall1 "get_number_from_pool", k1 + 2, p4 printk 0.01, k2 endin
Copyright (c) 2002 by Maurizio Umberto Puxeddu. All rights reserved.
Portions copyright (c) 2004 and 2005 by Michael Gogins.