Μια ερώτηση για το indexing. θα το πω με παραδειγμα για να καταλαβετε την ερωτηση. Θελω να κανω ενα παιχνιδι με python, την απλη κρεμαλα. Σαν ιδεα μου φανηκε οτι εχει πολυ αμεση σχεση με τις λιστες και τα string. Κανω λοιπον μια λιστα που περιεχει λεξεις. Ζητω απο την python να μου δωσει μια τυχαια λεξη απο την λιστα. Συνεχιζω το παιχνιδι, και θελω με το τελος να διαγραφει η λεξη απο την λιστα ωστε αν συνεχισω το παιχνιδι να μην υπαρχει περιπτωση να μου δωσει την ιδια λεξη.
Αρα (οπως το σκεφτομαι εγω) θα πρεπει να κανει ελεγχο to προγραμμα αν η τιμη που πηρε η μεταβλητη για την λεξη (πχ word =random(listalekseon)) ειναι στην λιστα και να την διαγραψει.
Κατι δηλαδη σαν
if word in listalekseon:
del word
Βεβαια το παραπανω δεν ειναι σωστο. θα πρεπει να βρεθει πια θεση εχει στην λιστα η λεξη (word) να παρω ισως το index και να το σβησω.
Πως γινεται αυτο? (θα παρακαλουσα αν ειναι δυνατον περιγραφικη απαντηση και οχι τον κωδικα ή ενα tip μονο...)
Επίσης στο
http://docs.python.org/library/random.h ... ule-random λεει:
random.choice(seq)
Return a random element from the non-empty sequence seq.
Οι λιστες δεν ειναΙ ακολουθίες?
#!/usr/bin/python3
#-*-coding :utf-8-*-
#Filename : Kremala.py
- Κώδικας: Επιλογή όλων
from random import random
wordlist =['ΠΕΡΙΣΤΕΡΙ', 'ΔΡΟΜΟΛΟΓΙΟ', 'ΚΟΛΟΚΟΤΡΩΝΗΣ' ,'ΣΥΜΠΑΝ', 'ΤΡΑΓΟΥΔΙ', 'ΞΥΛΟΚΟΠΟΣ']
[b]word = random.choice(wordlist)[/b]
print (word)
Εχει κάποιο λαθος?
Παρακαλω και παλι ΟΧΙ κωδικα...
θελω να το παιδεψω μονος μου...
Βρηκα μία λυση αλλα μου φαινεται λιγο πολυπλοκη, φανταζομαι οτι πρεπει να υπαρχει πιο ευκολος τροπος.
- Κώδικας: Επιλογή όλων
import random
wordList =['ΠΕΡΙΣΤΕΡΙ', 'ΔΡΟΜΟΛΟΓΙΟ', 'ΚΟΛΟΚΟΤΡΩΝΗΣ' ,'ΣΥΜΠΑΝ', 'ΤΡΑΓΟΥΔΙ', 'ΞΥΛΟΚΟΠΟΣ']
wordLength =(len(wordList))-1
WordId = random.randint(0,wordLength)
word = wordList[WordId]
print (word