學習Python呼叫方法中遇到的問題

2022-08-11 01:51:12 字數 603 閱讀 2274

我先寫了如下**

class

fi:  

deffibo(n):

if n==1 or n==2:

return 1

if n>2:

return fibo(n-1)+fibo(n-2)

f =fi()

print(f.fibo(10))

報錯:typeerror: fibo() takes 1 positional argument but 2 were given

查了之後發現通過物件呼叫的方法會先把自己傳進去,即fibo(f,10)。但是定義的fibo(n)中只有乙個引數。所以為了順利傳參,應該做以下修改:

class

fi:  

deffibo(self,n):

if n==1 or n==2:

return 1

if n>2:

return self.fibo(n-1)+self.fibo(n-2)

f =fi()

print(f.fibo(10))

self在呼叫的時候也意味著將自身之傳給fibo引數。加油,希望自己可以越來越專業

python學習中遇到問題

首先本人python版本為2.7 一 在python 中使用中文時,需要在 第一行加入 coding utf 8語句,它就是第一行唯一的一句,不要加其他東西,特別注意該語句之前不要有空格。二 在使用theano包時,會報typeerror cannot convert type tensortype...

python學習中遇到的函式

最近在維護公升級工具wana,由於這個工具對效率要求不明顯,所以使用python開發,而此前我對python並沒有太過深入的學習與使用,故這裡將學習過程中遇到的有趣知識點總結如下 enumerate 函式用於將乙個可遍歷的資料物件 如列表 元組或字串 組合為乙個索引序列,同時列出資料和資料下標,一般...

在C 中呼叫python方法

1.安裝ironpython 2.建立專案 建立乙個c 的控制台應用程式。新增引用 瀏覽到ironpython的安裝目錄中,新增對ironpython.dll,microsoft.scripting.dll 兩個dll的引用。3.新增python檔案到當前的專案中 def welcome name ...