class Board:
def __init__(self):
self.board = self.createBoard()
def createBoard(self):
line = []
for i in range(7):
line.append(' ')
board = []
for i in range(7):
board.append(line)
return board
def showBoard(self):
line = "| "
for x in range(len(self.board)):
for y in range(len(self.board)):
line += self.board[x][y] + " | "
print("-" * 29)
print(line)
line = "| "
print("-" * 29)
if __name__ == '__main__':
board = Board()
board.showBoard()
board.board[1][1] = "O"
board.showBoard()
पर दो-आयामी सूची गलत तरीके से असाइन करने वाली सूची गलत तरीके से अजीब समस्या पर फंस गई जब मैं कनेक्ट -4 पायथन कंसोल डेमो/गेम पर काम कर रहा था।पाइथन
ऊपर कोड के उत्पादन में इस प्रकार है:
-----------------------------
| | O | | | | | |
-----------------------------
| | O | | | | | |
-----------------------------
| | O | | | | | |
-----------------------------
| | O | | | | | |
-----------------------------
| | O | | | | | |
-----------------------------
| | O | | | | | |
-----------------------------
| | O | | | | | |
-----------------------------
अजीब बात यह है कि मैं उन सभी पदों के लिए O
सौंपा कभी नहीं, मैं सिर्फ यह स्थिति करने के लिए सौंपा [1] [1]।
-----------------------------
| | | | | | | |
-----------------------------
| | O | | | | | |
-----------------------------
| | | | | | | |
-----------------------------
| | | | | | | |
-----------------------------
| | | | | | | |
-----------------------------
| | | | | | | |
-----------------------------
| | | | | | | |
-----------------------------
की बहुत अधिक संभावना है कि मैं कुछ स्पष्ट और छोटे याद कर रहा हूँ है, लेकिन मैं देख रहा था और एक घंटे से अधिक के लिए कोशिश कर रहा है और मैं वास्तव में नहीं कर सकते हैं:
मैं उत्पादन होने की उम्मीद थी समस्या पाएं
यह मेरी बोर्ड की तरह नहीं है। बोर्ड सूची किसी अन्य द्वि-आयामी सूची की तुलना में कहीं अधिक विषम है।
>>> a = [[' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' ']]
>>> a[1][1] = "O"
[[' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', 'O', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' ']]
कौन सा मुझे उचित बोर्ड मूल्य हो जाता है:
[[' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' '], [' ', ' ', ' ', ' ', ' ', ' ', ' ']]
को कॉपी करके पेस्ट कि निष्क्रिय मैं में निम्नलिखित (यह जब मैं print(board.board)
मैं क्या मिलता है)।
मेरे कोड में इतना स्पष्ट रूप से गलत क्या है कि मुझे यह याद आ रही है? मुझे पूरा यकीन है कि जब आप में से कोई भी जवाब पाता है कि मैं शर्म में अपना सिर हिला दूंगा, तो यह संभव है कि यह बुरा हो।
पर्याप्त आत्म-शर्मनाक, तो मेरा कोड board.board[1][1] = "O"
board.board
में प्रत्येक पंक्ति में मान "ओ" असाइन क्यों करता है?
0-6 से किसी अन्य नंबर पर पहले 1 को बदलने से कुछ भी नहीं बदलेगा। सभ एक ही है।
मुझे यकीन है कि यह 100 अन्य प्रश्न का डुप्लिकेट है कर रहा हूँ , लेकिन दुर्भाग्यवश इसे खोजने के लिए अच्छे खोज शब्दों को समझना बहुत मुश्किल है, इसलिए प्रश्न को दोहराने के लिए किसी को दोष देना मुश्किल है ... दाईं ओर के कुछ संबंधित प्रश्न निश्चित रूप से संबंधित हैं, लेकिन उनमें से कोई भी डुप्लिकेट नहीं लगता है। – abarnert