Clumsiness लागू करें
आपके इस साफ-सुथरे कोड के साथ, रैंडम वॉक को कितनी बार सिम्युलेट करना है, यह बदलना बहुत आसान है. आपको बस टॉप-लेवल for लूप में range() फंक्शन को अपडेट करना है.
फिर भी हम एक बात भूल गए! आप थोड़े clumsy हैं और आपके गिर जाने की 0.5% संभावना है. इसके लिए एक और रैंडम नंबर जनरेट करना होगा. मूल रूप से, आप 0 और 1 के बीच एक रैंडम float जनरेट कर सकते हैं. अगर यह मान 0.005 से कम या बराबर हो, तो आपको step को 0 पर रीसेट कर देना चाहिए.
यह अभ्यास पाठ्यक्रम का हिस्सा है
इंटरमीडिएट Python
अभ्यास निर्देश
range()फंक्शन को बदलें ताकि सिमुलेशन 20 बार चलाया जाए.ifकंडीशन पूरी करें ताकि अगर कोई रैंडम float 0.005 से कम या बराबर हो, तोstepको 0 सेट कर दिया जाए. इसके लिएnp.random.rand()का उपयोग करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# numpy and matplotlib imported, seed set
# clear the plot so it doesn't get cluttered if you run this many times
plt.clf()
# Simulate random walk 20 times
all_walks = []
for i in range(5) :
random_walk = [0]
for x in range(100) :
step = random_walk[-1]
dice = np.random.randint(1,7)
if dice <= 2:
step = max(0, step - 1)
elif dice <= 5:
step = step + 1
else:
step = step + np.random.randint(1,7)
# Implement clumsiness
if ___ :
step = 0
random_walk.append(step)
all_walks.append(random_walk)
# Create and plot np_aw_t
np_aw_t = np.transpose(np.array(all_walks))
plt.plot(np_aw_t)
plt.show()