標籤:window tab 修改 protect close int 14. 語句 筆記
1.沒有 switch 語句,只能用 if 和 elif 來實現。
2.while … else 語句
3.其它語言不會這樣寫的例子:
# -*- coding: UTF-8 -*-
fruits = [‘banana‘, ‘apple‘, ‘mango‘]
for index in range(len(fruits)):
print ‘當前水果 :‘, fruits[index]
print "Good bye!"
range返回一個序列的數。
4.for … else 語句
5.pass 不做任何事情,一般用做佔位語句。(不知有什麼鳥用?)
6.dir() 函數不帶參數時,返回當前範圍內的變數、方法和定義的類型列表;帶參數時,返回參數的屬性、方法列表。(很實用的調試函數)
7.python 也有 math ,但使用前需要先引入
import math
8.常用的隨機函數:random(),shuffle(lst)
9.三引號允許一個字串跨多行。PHP的是 <<<EOF EOF;
hi = ‘‘‘hi
there‘‘‘
10.常用的字串函數
string.isnumeric()
string.replace(str1, str2, num=string.count(str1))
string.find(str, beg=0, end=len(string)) - PHP是 strpos
string.strip([obj]) - PHP 是 trim
string.lower() - PHP 是 strtolower
string.upper() - PHP 是 strtoupper
11.列表(List),相當於數組;元組相當於唯讀數組
12.字典,相當於 JSON 對象。
13.日期和時間
import time
time.time() - 時間戳記
time.localtime(time.time()) - 詳細的時間
time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) - 格式化時間
14.日曆(Calendar),需要用到再詳細瞭解
15.可更改(mutable)與不可更改(immutable)對象
在 python 中,strings, tuples, 和 numbers 是不可更改的對象,而 list,dict 等則是可以修改的對象。
不可變類型:變數賦值 a=5 後再賦值 a=10,這裡實際是新產生一個 int 值對象 10,再讓 a 指向它,而 5 被丟棄,不是改變a的值,相當於新產生了a。
可變類型:變數賦值 la=[1,2,3,4] 後再賦值 la[2]=5 則是將 list la 的第三個元素值更改,本身la沒有動,只是其內部的一部分值被修改了。
python 函數的參數傳遞:
不可變類型:類似 c++ 的值傳遞,如 整數、字串、元組。如fun(a),傳遞的只是a的值,沒有影響a對象本身。比如在 fun(a)內部修改 a 的值,只是修改另一個複製的對象,不會影響 a 本身。
可變類型:類似 c++ 的引用傳遞,如 列表,字典。如 fun(la),則是將 la 真正的傳過去,修改後fun外部的la也會受影響
16.預設參數,跟其它語言沒什麼區別。
17.不定長參數。PHP是後期的版本才有這個的。
def functionname([formal_args,] *var_args_tuple )
18.匿名函數,很簡單,只能一行。lambda [arg1 [,arg2,.....argn]]:expression
19.變數範圍:跟 Javascript 差不多吧
20.import 入引模組。
from import : 從車裡把礦泉水拿出來,給我
import : 把車給我
21.包就是檔案夾,但該檔案夾下必須存在 __init__.py 檔案, 該檔案的內容可以為空白。__int__.py用於標識當前檔案夾是一個包。
22.檔案操作
fo = open("foo.txt", "w")
print "檔案名稱: ", fo.name
print "是否已關閉 : ", fo.closed
print "訪問模式 : ", fo.mode
print "末尾是否強制加空格 : ", fo.softspace
23.物件導向
類的建構函式:__init__
self 代表類的執行個體,self 在定義類的方法時是必須有的,雖然在調用時不必傳入相應的參數。
執行個體化類其他程式設計語言中一般用關鍵字 new,但是在 Python 中並沒有這個關鍵字,類的執行個體化類似函數調用方式。
解構函式 __del__ ,__del__在對象銷毀的時候被調用,當對象不再被使用時,__del__方法運行
__private_attrs:兩個底線開頭,聲明該屬性為私人,不能在類的外部被使用或直接存取。
_foo: 以單底線開頭的表示的是 protected 類型的變數,即保護類型只能允許其本身與子類進行訪問,不能用於 from module import *
24.Regex
re.match(pattern, string, flags=0)
re.search(pattern, string, flags=0)
25.global 跟 PHP 的是一樣的。
26.函數可以返回多個值,這個比 PHP 方便多了。 例如下:
import math
def move(x, y, step, angle=0):
nx = x + step * math.cos(angle)
ny = y - step * math.sin(angle)
return nx, ny
x, y = move(100, 100, 60, math.pi / 6)
27. 可變參數
def calc(*numbers):
sum = 0
for n in numbers:
sum = sum + n * n
return sum
28. 在 window 下,用 pyinstaller -F Tkint.py 產生 exe,再在組策略裡設定這個 exe 運行。
在 linux 下,用 python -m py_compile file.py 產生 pyc,這樣只要是保護自己的代碼。
python 學習筆記