कोड के अलग-अलग हिस्सों को यादृच्छिक बनाना - पायथन, यादृच्छिक, आयात, फ़ंक्शन

मैं एक छोटा खेल बना रहा हूं, जहां 3 विकल्प दिखाई देते हैंऔर आपको सही उत्तर का चयन करना होगा। जाहिर है "ए" हर समय सही उत्तर नहीं हो सकता है, इसलिए मैं 3 प्रिंटों को यादृच्छिक करना चाहता हूं, लेकिन उन्हें भी निश्चित कर सकता हूं ताकि उनका सही उत्तर से मिलान किया जा सके।

यह कोड है, मुझे नहीं पता कि इसे कहां से शुरू करना है। मैंने कोड के 3 अलग-अलग वर्गों को 1, 2 और 3 के रूप में परिभाषित करने के बारे में सोचा, फिर उन को यादृच्छिक किया।

मैं चाहता हूं कि कोड का पहला बिट, "जो कि सही उत्तर है" एक मूल्य के लिए निश्चित हो, इसलिए मैं कह सकता हूं, अगर पसंद = एक फिर ... अच्छी तरह से किया गया सही उत्तर। (मुझे पता है कि यह हिस्सा कैसे करना है)

 input("now press enter for your definitions")

#1st
#This prints the fruit, and the CORRECT matching fruit definitions
print(a, "is -  A:", fruits[a])

#2nd
#these randomly generates 2 other fruit definitons
import random
with open("fruitdefinitions.txt") as f:
print (a, "is -  B:", random.choice(list(f)))

#3rd
import random
with open("fruitdefinitions.txt") as f:
print (a, "is -  C:", random.choice(list(f)))

बस "स्पष्ट करने के लिए" एक कीवर्ड है, और फलों [a] को शब्दकोश से "a" का मूल्य या परिभाषा मिलती है। fruitdefinition.txt फलों की परिभाषा के साथ एक पाठ फ़ाइल है।

धन्यवाद। जवाब देने के लिए सीधे जवाब न दें क्योंकि मैं काम में व्यस्त हूं।

उत्तर:

जवाब के लिए 2 № 1

random.shuffle आपका दोस्त है। पहले अपने दो यादृच्छिक गलत उत्तर चुनें। सही उत्तर के साथ उन्हें एक सूची में रखें। सूची में फेरबदल करें। केवल उपयोगकर्ता के साथ बातचीत (साथ) print या जो कुछ भी हो) एक बार आप सब कुछ फाइनल हो गया।

ध्यान दें कि गलत चयन करने का आपका वर्तमान तरीकाएक ही सूची में दो बार random.choice कहते हुए जवाब, दो गलत उत्तरों को एक दूसरे के समान समाप्त करने का जोखिम उठाते हैं। हो सकता है कि आप उस सूची को संसाधित करने के एक अलग तरीके के बारे में सोच सकते हैं जो उस घटना को समाप्त करेगा। मुझे लगता है random.shuffle वहाँ भी शामिल हो सकता है।

निम्न उदाहरण दिखाता है कि आप डेटा को कैसे पुन: व्यवस्थित कर सकते हैं, बजाय कोड में बयान को फिर से दर्ज करने के, विभिन्न परिणाम प्राप्त करने के लिए

import random
things = [ "spam", "eggs", "beans" ]
for repeat in range(10):   # exactly the same *code* will run 10 times...
print("the first item is " + things[0])
print("the second item is " + things[1])
print("the third item is " + things[2])
random.shuffle(things) # ... but with a different outcome each time

संबंधित सवाल
सबसे लोकप्रिय