python原原本本按書上寫的,可是為什麼報錯了呢

時間 2021-06-28 17:07:02

1樓:匿名使用者

class fibs(object):

def __init__(self):

self.a = 0

self.b = 1

def next(self):

self.a, self.b = self.b, self.a + self.b

return self.a

def __iter__(self):

return self

if __name__ == "__main__":

a = fibs()

for b in a:

if b < 1000:

print b

else:

break

整理了一下你的**,發現幾個問題說下,python內建函式__init__和__iter__都是以兩個下橫線開始和結尾的,init是類例項初始化時呼叫的,iter是類迭代用的額,for每次都會都會呼叫a物件的next函式,因為iter返回的例項本身,所以每次迴圈是呼叫a.next(),而next是返回的self.a付給了b。

還有就是推薦class fibs(object):這新式類的寫法,顯示繼承object類,你那是舊式類。

python作為指令碼執行時執行**要放到if __name__ == "__main__":中執行。

發現一個bug就是break放的位置不對,你的意思應該是當b大於等於1000時才break的吧。

python縮排推薦四個空格為一層縮排,還有就是一個tab縮排也可以但是不推薦。

2樓:匿名使用者

應該是縮排問題,python對縮排很嚴格。

python中 '!='是什麼意思

3樓:甜心

“!=”的意思是比較兩個物件是否不相等

例如 a != b

意思是 a不等於b。如果放在**當中,就是當a 不等於b時,則執行下面的條件。

4樓:大野瘦子

1、格式符

例如:a = 'test'

print 'it is a %s' %(a)列印的結果就是 it is a test

2、單獨看%,是一個運算子號,求餘數。

例如:求模運算,相當於mod,也就是計算除法的餘數,比如5%2就得到1。

python中%常用的操作有%s,%d,%r等%s,%r,%d分別表示字串以str(),rper(),以及十進位制整數表示,%f表示結果為浮點型。

1、%f 浮點型

import math

%a.bf,a表示浮點數的列印長度,b表示浮點數小數點後面的精度 ,%f時表示原值,預設是小數點後5位數 。

print "pi=%f" % math.pioutput: pi=3.141593

只是%9f時,表示列印長度9位數,小數點也佔一位,不夠左側補空格print "pi=%9f" % math.pioutput: pi=_3.141593

2、%d 整型

[python] view plain copynum=14

#%d列印時結果是14

3、%s 字串

[python] view plain copystring="hello"

%s列印時結果是hello

5樓:匿名使用者

簡單說,python中 '!=',就是“不等於”的意思。

希望我的回答能解決您的疑問。請採納。也祝您在python學習中,心想事成,學有所成。謝謝!

6樓:珍琪可可

不等於比如說:

a=1b=4

if a!=b:

print("a is not equal to b")

7樓:

第一個問題:python在用一個變數之前,需要先定義,

而在這段**中,用guess去和另一個引數(整數型別)做比較,那麼guess必須賦值。至於為什麼要賦值0。是因為secret這個引數隨機取了1到10中的一個數。

為了不直接一上來就出現guess和secret值相等,所以簡單的賦了0。當然也可以賦值比10大的整數。

第二個問題:input()是python中的輸入語句。輸入什麼就是什麼,比如輸入1,那麼temp就是int型別,輸入'hello',temp就是字串型別。

8樓:雙魚糾結

變數就是定義之後還能發生改變,可以重新賦值的量;

是與常量相對而言,python裡 a=5 就算是宣告一個變數 a 了; 引數是用在函式裡的。

9樓:匿名使用者

就是python的指令碼**檔案

這種檔案可以用py或者pyw為副檔名

雙擊執行,或者python 檔案方式開啟

10樓:大話殘劍

第一個guess = 0

if guess == 0:

print('ok')

nameerror: name 'guess' is not defined

原因是需要通過賦值來定義變數

第二個input是從鍵盤讀取輸入的函式

11樓:苟南河

不等於a!=1是a不等於1

12樓:秋水時至百川觀

x=1y=2

if x!=y:

print("x不等於y")

# 上述例子中,分別先給變數 x 和 y進行賦值,然後通過if語句來判斷 x 和 y 是否相等,如果不相等,則列印上述例子中“x不等於y” , != 就是不等於符號,它是由!和=組合在一起使用的。

13樓:

python中!=是不等於,當a!=b時返回true

python 中的"_,"問題

14樓:倆病人的病歷本

在python中,所有識別符號

可以包括英文、數字以及下劃線(_),但不能以數字開頭。python中的識別符號是區分大小寫的。

----這是知識背景------

但是通常python的變成習慣以下劃線開頭的識別符號是有特殊意義的。以單下劃線開頭(_foo)的代表不能直接訪問的類屬性,需通過類提供的介面進行訪問,不能用“from *** import *”而匯入;以雙下劃線開頭的(__foo)代表類的私有成員;以雙下劃線開頭和結尾的(__foo__)代表python裡特殊方法專用的標識,如__init__()代表類的建構函式。

在互動模式下執行python時,一個下劃線字元(_)是特殊識別符號,它保留了表示式的最後一個計算結果。

>>> "hello"

'hello'

>>> _

'hello'

>>> 10+10

20>>> _

20在python中,函式、類、模組定義的第一段**如果是字串的話,就把它叫作檔案字串,可通過__doc__屬性訪問。如:

def test():

"this is a document string"

return 100+1000

>>>print test.__doc__

this is a document string

15樓:

_就是一個變數,換成a也是可以的,沒有特別的意思,不過一般用_表示的變數好像都是沒什麼用的一個臨時變數,大概是一個程式設計習慣吧。

16樓:匿名使用者

就一個變數,在interpreter中上自動儲存為上一個表示式的值。

python中 *= 是什麼意思

17樓:百度文庫精選

內容來自使用者:梅悠心理

18樓:匿名使用者

1、兩個值相來加,然後返回值自給符號

左側的變數

舉例如下:

>>> a=1

>>> b=3

>>> a+=b(或者a+=3)

>>> a

42、用於字串連線(變數值帶引號,資料型別為字串)>>> a='1'

>>> b='2'

>>> a+=b

>>> a

'12'

擴充套件資料:python常用運算子

1、算術運算子

2、比較運算子

3、賦值運算子

4、位運算子

5、邏輯運算子

6、成員運算子

7、身份運算子

8、運算子優先順序

以下所列優先順序順序按照從低到高優先順序的順序;同行為相同優先順序。

lambda  #運算優先順序最低

邏輯運算子: or

邏輯運算子: and

邏輯運算子:not

成員測試: in, not in

同一性測試: is, is not

比較: <,<=,>,>=,!=,==

按位或: |

按位異或: ^

按位與: &

移位: << ,>>

加法與減法: + ,-

乘法、除法與取餘: *, / ,%

正負號: +x,-x

具有相同優先順序的運算子將從左至右的方式依次進行,用小括號()可以改變運算順序。

19樓:熱詞課代表

“囧”,本義為“光明”。從2023年開始在中文地區的網路社群間成為一種流行的表情符號,成為網路聊天、論壇、部落格中使用最最頻繁的字之一,它被賦予“鬱悶、悲傷、無奈”之意。

20樓:暗客默燭

python中:

a *= b

即為:a = a*b

/=,-=,+=,也都是一樣的意思,寫起來很方便,比如a自增只需a+=1。

21樓:靳昕昕回慨

這個python的repl,用來在控制檯互動式執行python**。一般是演示小范例的時候使用。

啟動方式是直接執行python,不帶任何引數。之後可以在》提示符後面輸入

22樓:蝸牛學院

這個是“等於乘以”的簡寫。

a *= 2

# 等價於

a = a * 2

類似的寫法還有 +=, -=, /= 等。

23樓:祝略光孤晴

1.相加,然後返回值給前一個變數

eg:>>>

a=1>>>

b=2>>>

a+=b

>>>a3

2.字串連線

>>>a='1'

>>>b='2'

>>>a+=b

>>>a'12'

注意第二個有引號,

是作為字串處理的。

24樓:秋水時至百川觀

= 簡單的賦值制運算子 c = a + b 將 a + b 的運算結果賦值為 c

+= 加法賦值運算子 c += a 等效於 c = c + a

-= 減法賦值運算子 c -= a 等效於 c = c - a

*= 乘法賦值運算子 c *= a 等效於 c = c * a

/= 除法賦值運算子 c /= a 等效於 c = c / a

%= 取模賦值運算子 c %= a 等效於 c = c % a

**= 冪賦值運算子 c **= a 等效於 c = c ** a

//= 取整除賦值運算子 c //= a 等效於 c = c // a

25樓:匿名使用者

之前有看到過別人轉過

python中%代表什麼意思?

26樓:大野瘦子

1、格式符

例如:a = 'test'

print 'it is a %s' %(a)列印的結果就是 it is a test

2、單獨看%,是一個運算子號,求餘數。

例如:求模運算,相當於mod,也就是計算除法的餘數,比如5%2就得到1。

python中%常用的操作有%s,%d,%r等%s,%r,%d分別表示字串以str(),rper(),以及十進位制整數表示,%f表示結果為浮點型。

1、%f 浮點型

import math

%a.bf,a表示浮點數的列印長度,b表示浮點數小數點後面的精度 ,%f時表示原值,預設是小數點後5位數 。

print "pi=%f" % math.pioutput: pi=3.141593

只是%9f時,表示列印長度9位數,小數點也佔一位,不夠左側補空格print "pi=%9f" % math.pioutput: pi=_3.141593

2、%d 整型

[python] view plain copynum=14

#%d列印時結果是14

3、%s 字串

[python] view plain copystring="hello"

%s列印時結果是hello

Python簡單問題,python簡單問題?

這個問題是遞迴邊界造成的錯誤。從目前的狀況開看,你該是沒有判斷w 如需要追問,請復具體的函式功能以及street變數的值 縮排問題,刪掉前面的空格重新打一下 基穆司本拉登 在find函式中第三行,elif的判斷語句中的第二個條件那裡少了個 可靠的我心我在 elif 那一行 末尾了少了一個 括號 sh...

Python問題求解,python問題求解!

周工做夢 方法a要通過一例項來呼叫,如 class a def a self print i m a obj a obj.a 狍八歲 主要問題和解決方法如下 中文路徑的問題 在d盤下儲存乙個名字為 中文.txt 的檔案。執行如下測試 coding utf 8 f open d 中文.txt r pr...

關於Python執行問題,python 執行檔案路徑問題

巴巴吖葩琦 python2與python3的區別不是很大 其中我知道的有 python2中有raw input 用於接受使用者輸入數字的函式 pythonb3中則沒有raw input,只有input,input接受的全都是字串型別。還有乙個就是python3.5以上的版本字典中的元素變得有序了,在...