本文目錄一覽:
python 數bob
def recount(s, subs):
recount = 0
for i in range(len(s) – len(subs) + 1):
print(i, s[i:i + len(subs)])
if s[i:i + len(subs)] == subs:
recount += 1
return recount
if __name__ == ‘__main__’:
s = ‘azcbobobegghakl’
print(recount(s, ‘bob’))
python求解
使用方式不對,turtle.Turtle是RawTurtle的子類,生成對象應該加(),正解應該是:
之所以出現你這幾個錯誤的原因,也可以理解,forward()函數或者說fd函數的定義里是有兩個參數的,(self,distance),self是默認調用這個方法的類對象自身,所以只需要傳入一個distance參數即可,但是你在這個過程中沒有正確的創建類對象,你可以比對bob=turtle.Turtle和bob=turtle.Turtle(),分別列印出bob查看。因此函數自然就把你傳入的100作為self參數了。
那麼為什麼不加括弧卻不報錯等等一系列追問,這就涉及到類的實例化的問題了,扯遠了。反正你改過來就行了。
一個python的程序問題
在unix/linux操作系統的世界裡,一切都是文件,包括stdin/stdout/stderr.
你可以先設想在loadDbase里沒有import sys,sys.stdin=dbfile這兩句,那麼loadDbase就是從終端(命令行/控制台)輸入數據; 在給出這兩句之後,應用就把dbfile(那個已經打開的文件)當作正在輸入數據的終端,從中讀取數據–這時的input和之前從終端讀取數據的input沒啥兩樣的。
四、 python中的數據類型——列表
列表是一種有序的集合,有點類似c裡面的數組。它的特點是,可以隨時向裡面添加或刪除其中的元素,在python中經常用來存放數據。列表的特點是中括弧,內部元素用逗號隔開。
在這個列表中,可以放進去任何元素,不論你的元素是字元串、整型、浮點型、還是布爾值、空值,包括列表什麼的,都可以放進去。
元素與元素之間,用逗號隔開。
列表會為每個元素分配序號,這個序號代表它的位置,稱為索引(index),第一個元素的位置是0,第二個元素是1,以此類推。
使用索引獲取列表中的值時,需要使用中括弧來訪問,在中括弧前面加上列表名,中括弧內部是元素的索引。
0代表第一個元素的位置,1代表第二個,-1代表倒數第一個,-2代表倒數第二個
使用 len() 函數,可以查看列表裡面有多少個元素
在python中,列表的操作是非常的靈活的,我們可以向其中添加或刪除元素。
添加使用 list.append() 函數
list.append() 函數是將元素插入到列表的末尾,當我們想在特定位置插入元素時可以使用 list.insert() 函數
list.insert() 函數接受兩個參數,第一個參數是插入位置,第二個參數是要插入的元素。
需要注意的是,在使用append和insert時,必須在前面註明要操作的列表。就像上面的例子,我們要操作classmates這個列表,所以必須寫成 classmates.append() 或 classmates.insert() ,如果不這麼寫,計算機就不知道你要往哪個列表中加入元素。
沒有特殊情況的話,推薦使用append()函數添加元素,因為使用append的時候,元素默認加在列表尾部,不會造成其他元素索引值的改變。如果使用insert的話,就像上面的insert(1,’Tom’),在位置1插入’Tom’後,Tom後面所有的元素,索引值都加了一個1,列表中元素越多,受影響的程度越大,因此使用append()函數要比insert()函數更快。
刪除列表中元素的方法有三種
del後面需要用索引的方式表明要刪除的元素,也就是上面的例子,names[1]代表names中的第二個元素,使用del即可刪除
list.pop() 函數與del差不多,都是使用索引值進行刪除,只不過寫法不同。
我們可以發現,執行 names.pop(1) 後,python shell列印出了第二個元素的值,也就是我們要刪除的那個值,這是因為 pop() 這個函數,是有返回值的,有時候我們需要使用這個值,這個時候就可以用變數存起來。
這樣我們就可以通過調用a而使用剛才刪掉的元素了。
list.remove() 函數的作用是刪除第一個匹配的元素,上面的例子中,names這個列表裡面,有兩個’Bob’,remove函數只刪除了第一個’Bob’。這就是 list.remove() 函數的特點。
有時候我們想使用列表的前10個元素,或者前n個元素,這時候就應該使用列表的切片。
切片和索引類似,都是使用中括弧,區別是,索引中的中括弧裡面只有一個數,而切片不同。切片是切割列表,形成切割下來的部分形成新的列表。
切片: list[start:end:[step=1]] ,這就是切片的表達式,要求start和end兩者必須有一個,step不是可以不指定,不指定的時候默認為1。
切片該怎麼理解呢,start就是開始的位置,end就是結束的位置。切片有個特點是「取前不取後」,看上面那個例子可以發現,1作為start,3作為end,1代表第二個元素,3代表第四個元素,列表切片的時候,是不取後面的那個數字對應的元素的,也就是不取第四個元素,所以names[1:3]只取了第二個元素和第三個元素,這就是所謂的取前不取後。
再看下一個例子。
當不指定start或者end的時候,start默認為0,end默認為最後一個元素的索引值+1,因為「取前不取後」,要想取到最後一個元素,必須加個1才行。
上例中,用 len(numbers) 表示了最後一個元素的索引值,因為索引值從0開始,最後一個元素的索引值一定是列表內元素個數-1,根據「取前不取後」,在end位置上的數字應該+1,所以最後就等於 len(numbers) 了。
當不設定start和end的時候,就默認取所有的元素了。
當加入step,這個選項後,step代表步長,默認為1,設定成2的時候,就是隔一個取一個,設定成3時就是隔兩個取一個。
上例中,第一個切片,start和end均未設定,因此從第一個元素開始,隔一個取一個,得到了所有奇數位置的元素。
第二個切片,start設定為了1,因此取了所有偶數位置的元素。
3在列表中,0不在列表中,所以 3 in a 是True,而 0 in a 是False
更多關於列表的信息可以通過使用 help(list) 查看幫助文檔。
Python的turtle庫有什麼用
海龜庫(turtle)
海龜庫 (turtle) 是Python語言中一個很流行的繪製圖像的函數庫,想像一個小烏龜,在一個橫軸為x、縱軸為y的坐標系原點,(0,0)位置開始,它根據一組函數指令的控制,在這個平面坐標系中移動,從而在它爬行的路徑上繪製了圖形。
海龜庫積木盒有點類似Kitten創作工具的畫筆和動作積木盒的結合體,可以繪製、控制畫筆移動,大家使用一下就可以體會了哦。
海龜圖的窗口坐標系同Kitten舞台類似,小窗口的情況下,海龜圖高和寬是固定400像素。全屏的海龜圖和瀏覽器本身的尺寸有關。
請點擊輸入圖片描述
請點擊輸入圖片描述
海龜圖和math庫、random庫一樣,需要先導入庫 import turtle,才可以使用庫中的函數。使用海龜庫中的函數,你可以畫出各種有趣的圖形。
原創文章,作者:VUCO,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/138937.html