廖Python学习笔记一
1. 廖Python學習筆記
大的分類 如函數 用二級標題,下面的用三級 如輸入輸出
1.1.1. 輸入輸出
1.1.1.1. 輸出
用 print() 在括號里加上字符串,就可以向屏幕上輸出指定的文字
print()函數可以接受多個字符串,用逗號(,)隔開,依次輸出
遇到逗號輸出一個空格。如圖
1.1.1.2. 輸入
提供了一個input(),可以讓用戶輸入字符串,并存放到一個變量里。
name = input() print(name)1.1.2. 變量
是初中數學所學的代數基礎知識的使用。
- 整數(integer):負、正數(不帶小數點)
- 浮點數(float):帶小數點
- 字符串(string):以單引號',雙引號"括起來的任意文本,單引號也是文本,需要雙引號,雙引號需要加\
- 多行字符串,用'''...''',需要轉義的比較多,可以利用r'',表示內部的字符串默認不轉義
- 布爾值(bool):一個布爾值只有True False兩種值
- 空值(None):用None表示 ,只是一個特殊的空值
- 變量:概念基本上和實踐代數的方程變量是一致的。
- // 求余運算
1.1.3. 字符串和編碼
字符編碼:
ASCII、UTF-8、Unicode
字符串: - ord 獲取字符的整數表示
- chr 函數把編碼轉換為對應的字符
格式化:
輸出格式的字符串: 用%來實現,在字符串內部:%s %d %f 點位符,外面用%引導了多個變量
print('%2d-%02d' % (3, 1)) print('%.2f' % 3.1415926) #---------- 3-01 3.14另外一種格式化方式用format()
'Hello, {0}, 成績提升了 {1:.1f}%'.format('小明', 17.125) #--- 'Hello, 小明, 成績提升了 17.1%'1.1.4. 使用list和tuple
1.1.4.1. list
Python內置的一種數據類型是列表:list
List是一種有序的集合,可以隨時添加和刪除其中的元素
1.1.4.2. tuple
另一種有序列表叫元組:tuple
元組一量初始化不能修改
定義的形式:t = (1,2) or t=() or t=(1,)--一個元素時后面得加逗號
1.1.5. 條件判斷
不要少寫冒號(:)
if <條件判斷1>: <執行1> elif <條件判斷2>: <執行2> elif <條件判斷3>: <執行3> else: <執行4>1.1.6. 循環
- for
- while
- break continue
1.1.7. 使用dict 和Set
1.1.7.1. dict
Python內置子字典:dict的支持,Dict全稱dictionary
使用健-值(key-value),具有極快的查找速度
dict有以下幾個特點:
- 查找和插入的速度極快,不會隨著key的增加而增加
- 需要占用大量的內存,內存浪費多 >> d = {'Michael': 95, 'Bob': 75, 'Tracy': 85} >> d['Michael'] 95
操作方法:
- 添加add(key)
- 刪除remove(key)
1.1.8. 函數
Python不但能非常靈活地定義函數,而本身內置了很多有用的函數,可以直接調用
1.1.8.1. 抽象
抽象:是數學中非常常見的概念
函數的調用
內置函數,直接調用就可以,只需要知道函數的名稱和參數,要交互命令行通過help(函數名)查看函數的幫助信息
1.1.8.2. 數據類型轉換
內置常用的函數里包括類型轉換函數,比如int(),
1.1.8.3. 定義函數
定義一個函數要使用def語句,依次寫出函數、括號、括號中的參數和冒號(:),然后,在縮進塊中編寫函數體,函數的返回值用return語句返回。
#coding:utf-8 def my_abs(x): if x >= 0: return x else: return -x #調用 print(my_abs(-99))備注:
函數體內部的語句在執行時,一旦執行到return語句時,函數就執行完畢,并裝結果返回
1.1.8.4. 空函數
想定義一個什么事也不做的空函數,可以用pass語句
def nop():pass小結
定義函數時,需要確定函數名和參數個數;
如果有必要,可以先對參數的數據類型做檢查;
函數體內部可以用return隨時返回函數結果;
函數執行完畢也沒有return語句時,自動return None。
函數可以同時返回多個值,但其實就是一個tuple。
1.1.8.5. 函數的參數
定義函數的時候,我們把參數的名字和位置確定下來,函數的接口定義就完成了。
對于函數的調用者來說,只需要知道如何傳遞正確的參數,以及函數將返回什么樣的值就夠了
位置參數
def power(x, n=2): s = 1 while n > 0: n = n - 1 s = s * x return s設置默認的函數 ,要注意以下幾點:
- 一是必選參數在前,默認參數在后
- 二是如何設置默認參數
可變參數
定義可變參數和定義一個list或者tuple參數相比,僅僅在參數前面加一個*號
關鍵字參數
可變參數允許你傳入0個或者任意個參數,這些可以變參數在函數調用時自動組裝為一個tuple
關鍵字參數允許你傳入0個或者任意個含參數名的參數,這些關鍵字參數在函數內部自動組裝為一個dict
命名關鍵字參數
對于 關鍵字參數 ,函數的調用者可以傳入任意不受限制的關鍵參數。
小結
Python的函數具有非常靈活的參數形態,既可以實現簡單的調用,又可以傳入非常復雜的參數。
默認參數一定要用不可變對象,如果是可變對象,程序運行時會有邏輯錯誤!
要注意定義可變參數和關鍵字參數的語法:
*args是可變參數,args接收的是一個tuple;
**kw是關鍵字參數,kw接收的是一個dict。學
以及調用函數時如何傳入可變參數和關鍵字參數的語法:
可變參數既可以直接傳入:func(1, 2, 3),又可以先組裝list或tuple,再通過args傳入:func((1, 2, 3));
關鍵字參數既可以直接傳入:func(a=1, b=2),又可以先組裝dict,再通過**kw傳入:func(**{'a': 1, 'b': 2})。
使用*args和**kw是Python的習慣寫法,當然也可以用其他參數名,但最好使用習慣用法。
命名的關鍵字參數是為了限制調用者可以傳入的參數名,同時可以提供默認值。
定義命名的關鍵字參數在沒有可變參數的情況下不要忘了寫分隔符*,否則定義的將是位置參數。
遞歸函數
在函數內部,可以調用其他函數。如果一個函數在內部調用自身,這個函數就是遞歸函數
def fact(n): if n==1: return 1 return n * fact(n - 1)調用過程:
===> fact(5)
===> 5 fact(4)
===> 5 (4 fact(3))
===> 5 (4 (3 fact(2)))
===> 5 (4 (3 (2 fact(1))))
===> 5 (4 (3 (2 1)))
===> 5 (4 (3 2))
===> 5 (4 6)
===> 5 24
===> 12
轉載于:https://blog.51cto.com/cysky/2061791
總結
以上是生活随笔為你收集整理的廖Python学习笔记一的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 信息安全与硬盘数据销毁
- 下一篇: Spring Aop----用idea实