看板 Python 關於我們 聯絡資訊
各位python 前輩們好 目前正在自學python 最近正在研讀動物書的精通python 目前在class這邊有點卡關 想請問一下各位前輩 在python 的function 中 例: def buggy(arg, result=[ ]): result.append(arg) print(result) 我可以把它解釋成 append() 用”.”去操作result 物件嗎? 因為之前我在讀深入淺出java的時候 書上說”句點”是操作運算元 可是當到了class的時候 例1: class Person(): def_init_(self,name): self.name=name hunter= Person(“Andy”) 這邊我完全不懂self 和句點的意思是什麼? 例2: import turtle brad= turtle.Turtle() 在import turtle的文件後 用Turtle()這個函式 建立了brad這個物件 可是這邊的”句點”我不知道怎麼解讀它的意思? 總歸來說 想請問各位前輩 在程式語言中 “句點”到底該怎麼解讀它的意思? 如果我的問題真的有點蠢的話 希望前輩們不要介意QQ 感謝各位! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.139.4.129 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1525335198.A.397.html
mikapauli: 資料夾的概念05/03 16:17
感謝m大的回覆! 好像有點懂又有點不太懂XD 是指像我們在資料夾中 建立新的資料夾或資料嗎? ※ 編輯: firstlovesky (223.139.4.129), 05/03/2018 16:20:47
abcd810112: 像是取出裡面的某個東西來用的概念05/03 16:38
abcd810112: 例如說一開始的result是一個list05/03 16:39
abcd810112: .就代表取出list型態裡面內建的函數append ()05/03 16:39
感謝a大的回覆! 取出的概念就是了
FakeGPS: 這就是物件導向的概念 世界上有許多種類的物體05/03 16:55
FakeGPS: 其中一類叫Person 而Person這類物體有什麼特徵呢05/03 16:56
FakeGPS: 每個Person都會有名字 會做某些事情 "."後面是接05/03 16:58
FakeGPS: 性質 或 行為05/03 16:58
FakeGPS: hunter是一個Person 所以他會有名字 會做某些事情05/03 17:02
FakeGPS: 所以hunter.name 就是他的名字"Andy"05/03 17:04
FakeGPS: hunter.speak(台詞) 在螢幕上印出某段文字之類的05/03 17:08
感謝F大的回覆! 物件的屬性跟方法的概念我大概知道 你解釋有點像我之前在stack overflow看到的 句點就是結束,後面接著屬性或方法
ThxThx: Python每個東西都是物件(object)05/03 17:11
ThxThx: 句點是取得物件的屬性(attribute),這個屬性可以是funct05/03 17:11
ThxThx: ion、class等物件05/03 17:11
ThxThx: 最後圓括弧加在function後面是呼叫function的意思,加在05/03 17:11
ThxThx: class後面是建立class instance的意思05/03 17:11
感謝T大的回覆! 您的解釋讓我清楚許多! 想順帶請問一下您 屬性(attribute)跟方法(method) 不是兩個不一樣的範疇嗎? 但您的意思是物件的屬性 涵括了各種需要的資料囉?
sppmg: a.b 就是a文件下的b屬性或方法。有點像結構變數,但能夠存05/03 21:29
sppmg: 函式(此稱方法)。 05/03 21:29
sppmg: name那裡, .name 是屬性名稱(物件自帶變數), =name 是指05/03 21:34
sppmg: 定函式輸入參數 name 給 .name ,兩者不一樣。self 指的是05/03 21:34
sppmg: 物件本身(忘記是否是python keyword 了),用來存取物件自身05/03 21:34
sppmg: 屬性,其他語言亦常用 this 表示。05/03 21:34
sppmg: m大資料夾大概是指可以串接子物件吧!05/03 21:36
感謝s大的解釋! 關於self 的解釋讓我比較清楚了! 書上是說: self雖不是keyword 但是一個共識的用法! ※ 編輯: firstlovesky (114.47.57.224), 05/04/2018 00:36:01
TitanEric: 就是OOP啊 建議好好學一學 另外module有點不一樣就是 05/04 00:39
感謝T大的回覆! 關於module跟package的import 我本來也想問 裡面也是有使用到句點 書上說就是取出裡面的資料出來使用 所以跟物件資料的存取是類似的概念囉? ※ 編輯: firstlovesky (114.47.57.224), 05/04/2018 00:46:13
Marsden: Often, the first argument of a method is called self. 05/04 00:43
Marsden: This is nothing more than a convention: the name self 05/04 00:44
Marsden: has absolutely no special meaning to Python. 05/04 00:44
感謝M大的回覆! 我對書上的理解是 self是本身物件的參考 雖不是keyword 但在python 的程式中, self只會是本身物件的參考而已 ※ 編輯: firstlovesky (114.47.57.224), 05/04/2018 00:54:09
ThxThx: 先回你回我的問題:可以把物件的方法(method)看成是一個05/04 03:29
ThxThx: instance的屬性,只是這個屬性是一個特別的function05/04 03:30
ThxThx: 這個function透過descriptor的方式幫你加self指回原05/04 03:31
ThxThx: instance。只是關於descriptor就是進階的內容了。 05/04 03:33
ThxThx: 另外關於import,import foo會建立一個叫foo的module物件05/04 03:35
ThxThx: 這個物件的屬性是你在foo裡面所用到的變數、函式、class等05/04 03:36
ThxThx: 補個code https://imgur.com/a/1REaUrq05/04 04:13
ThxThx: Python裡dot就是attribute access而已05/04 04:14
感謝T大再次回覆! 解釋的非常詳細 對於屬性的意思我總算明白了XD
IMPOSSIBLEr: 就想成「的」就好啦05/04 12:06
感謝I大的回覆! 果然淺顯易懂XD
anticrime: 跟樓上一樣 我也是把 a.b當作a的 b 去理解05/04 13:19
感謝a大的回覆!
Jyery: 物件導向 您非本科齁05/04 16:10
被您發現了QQ ※ 編輯: firstlovesky (114.47.57.224), 05/04/2018 16:45:40
thethirdfoot: 優質文 05/05 11:42
jamfly: this-> 05/05 15:11
Jyery: av 05/05 16:18
saito2190: print(柯文哲.職業) 05/06 14:45
saito2190: 印出"臺北市長",大概這樣吧 05/06 14:45
newton2009: 柯批.說(你好) 05/07 08:46
newton2009: 柯批.說('你好') 印出「你好」的概念 05/07 08:48
wang19980531: 先學OOP.. 我覺得學習方式有點本末倒置了.. 05/09 15:56
wang19980531: 例如:print(2020選舉.總統) 丁守中 05/09 16:00
wang19980531: print(2020選舉.執政黨) KMT 05/09 16:00
wang19980531: print(2020選舉.台北市長)object “台北市長” not 05/09 16:00
wang19980531: found 05/09 16:00