people =
lloyd = people
alice = people
tyler = people
lloyd['name'] = "lloyd"
alice['name'] = "alice"
tyler['name'] = "tyler"
print lloyd
這個來自codecademy的一段教學...(當然整個**都是我自己敲的..)
然而這樣寫的結果是lloyd people等等都是乙個變數..= =
如果要達到目標效果 那麼要寫成這樣
people =
lloyd = people.copy()
alice = people.copy()
tyler = people.copy()
lloyd['name'] = "lloyd"
alice['name'] = "alice"
tyler['name'] = "tyler"
print lloyd
其中這裡的關鍵是 python裡的例項名往往指的都是類似於c++的引用
順手發乙個很好玩的東西~(當然這個可以認為是原創或者非原創啦...)
from random import randint
board =
for x in range(5):
def print_board(board):
for row in board:
print " ".join(row)
print "let's play battleship!"
print_board(board)
def random_row(board):
return randint(0, len(board) - 1)
def random_col(board):
return randint(0, len(board[0]) - 1)
ship_row = random_row(board)
ship_col = random_col(board)
print ship_row
print ship_col
# everything from here on should go in your for loop!
# be sure to indent four spaces!
for turn in range(4):
print "turn", turn + 1
guess_row = int(raw_input("guess row:"))
guess_col = int(raw_input("guess col:"))
if guess_row == ship_row and guess_col == ship_col:
print "congratulations! you sunk my battleship!"
break
else:
if (guess_row < 0 or guess_row > 4) or (guess_col < 0 or guess_col > 4):
print "oops, that's not even in the ocean."
elif(board[guess_row][guess_col] == "x"):
print "you guessed that one already."
else:
print "you missed my battleship!"
board[guess_row][guess_col] = "x"
if turn == 3:
print "game over"
# print (turn + 1) here!
物件和物件指標以及物件引用的使用
如下程式 include include using namespace std class m 向編譯系統宣告,m類在整個源程式內已經定義 class student void set string str void print class m m類的有參建構函式 m m類的無參建構函式 int ...
JS 類 物件以及物件的建構函式
一 類 對一類抽象事物共有特徵的描述 如人 杯子 二 物件 乙個具體的例項 如小剛 保溫杯 var xiaogang var xiaoli var xiaohua function car car.lun1 左前輪 car.lun2 右前輪 car.lun3 左後輪 car.lun4 右後輪 car...
物件導向的特性以及對其理解
1.封裝 所謂封裝,就是將客觀事物封裝成抽象的方法,並且類可以吧資料和放發讓可信的類或者物件進行操作,對不可信的類或物件進行影藏。類是封裝資料和操作這些資料 的邏輯實體。在乙個類的內部,某些屬性和方法是私有的,不能被外界訪問。通過這中方式,物件內部資料進行了不同級別的訪問控制,就避免了程式中的無關部...