最近在起步學python,聚合一下這個過程中蒐集的資源和對一些基本知識做個小總結,語法基於python3,方便以後查詢。
python官方文件
不錯的基礎課程(基本語法、演算法、建模)
練習 以下是整理常用可能遺忘的基礎點
python3中的輸入是input(),獲得使用者輸入的字串
如果需獲得使用者輸入的資料,加入強制型別轉換即可>>> a = input("please input your name: ")
please input your name: wu
>>> a
'wu'
在python2中獲得輸入字串的函式是raw_input(),在python3中已將其移除>>> a = int(input("please input an integer: "))
please input an
integer: 55
>>> a
55
對於標準庫的用法,隨著python版本的更新而不斷更新,如需要應在官網檢視更新,如在python2中,使用字串操作需要匯入,如from string import *
,在python3中,則不需要,可以直接使用
官網的所有標準庫用法說明>>> str.find("atgacatgcacaagtatgcat", "atgc") #查詢關鍵字atgc在目標序列中的位置
5
用遞迴方法程式設計的要點:
1.確定達到條件退出的基本事件
2.確定每次遞迴的運算
3.確定遞迴的變數
一言之,tuple的元素不能進行增刪改,而list可以進行操作。另外tuple的不變是指每個元素的指向不變,如果tuple裡面的元素包含list,則也會改變(見標題鏈結)。如想不出現這種問題,則避免這種套用。def
countsubstringmatchrecursive
(target, key):
#用遞迴方法求出關鍵字key在target中出現的次數
n = 0
return recursive(target, key, n)
defrecursive
(target, key, n):
a = str.find(target, key) #第二步,確定每次遞迴的運算
if a == -1: #第一步,確定條件退出的基本事件
return n
else:
n += 1
return recursive(target[a+1:], key, n) #第三步,確定遞迴的變數
tuple和list可以相互轉換
比較幾種排序演算法對弄懂演算法複雜度的等基本概念很有幫助,推薦一篇對演算法總結不錯的部落格>>> list((1,2,3)) #tuple轉換為list
[1, 2, 3]
>>> tuple([1,2,3]) #list轉換為tuple
(1, 2, 3)
異常處理這部分目前還不是理解得很透徹,需要更多的實踐來理解。這是一篇總結得比較好的部落格
判斷變數型別有type()和isinstance()兩種方式,不同之處在於
對於新式類則type方式無效,因此強烈建議用isinstance()判斷而不用type()class
a:pass
class
b(a):
pass
isinstance(a(), a) # returns true
type(a()) == a # returns true
isinstance(b(), a) # returns true
type(b()) == a # returns false
1.當tuple和list按索引讀取元素時均用中括號,否則會報如下錯誤
2.使用 in 判斷元素是否在tuple內,in 的運算級比運算子要低typeerror: 'tuple'
object
is not callable
>>>
1in (1,2,3) == true
#沒加括號時先計算後面,錯誤
false
>>> (1
in (1,2,3)) == true
#正確true
python3學習筆記
redis訊息佇列的使用 coding utf 8 created on tue mar 26 15 58 34 2019 author admin import redis class redisqueue object def init self,name,namespace queue red...
python3 學習筆記
python3學習筆記 python基礎 輸出 print 括號中加上想要輸出的資料,就可以將指定內容輸出至螢幕。1.輸出的時候要注意資料型別。字串,整數等等 2.括號中可以包含多個字串,使用逗號隔開就可以了。但是每次輸出遇到這個連線逗號的時候都會輸出乙個空格。3.括號中的內容也可以是變數名和計算公...
Python3學習筆記02
昨天發現無法轉碼,於是就又找了另外找了乙個參考 發現可以執行了 encoding utf 8 import urllib.request def getdata url www.xx.com data urllib.request.urlopen url read z data data.decod...