Colaboratory
python的執行
第一個Python程式如下:
print("Hello")
就這樣一行,沒了,直接就可以執行,不像C、C++還要寫一大堆起始函式有的沒的。
基本規則
Python程式碼的行尾不需要寫任何標點符號。
單行註解可用井字號#,如:
#這是單行註解
使⽤tab鍵做為縮排區塊的依據
多行註解可用三個連續的雙引號""",例如:
"""
這是多行註解一
這是多行註解二
"""
Python單引號、雙引號和三雙引號的區別
如: s1 = “hello,world” 如果要寫成多行,那麼就要使用\ (“連行符”)
如:s2 = “hello,\
world”
如果你用3個雙引號的話,就可以直接寫了,
如:s3 = “””hello,
world,
hahaha.”””,
那麼s3實際上就是”hello,\nworld,\nhahaha.”, 注意“\n”,所以,如果你的字串裡\n很多,你又不想在字串中用\n的話,那麼就可以使用3個雙引號。而且使用3個雙引號還可以在字串中增加註釋,如:
s3 = “””hello, #hoho, this is hello, 在3個雙引號的字串內可以有註釋哦
world, #hoho, this is world
hahaha.”””
這就是3個雙引號和1個雙引號表示字串的區別了,3個雙引號與1個單引號的區別也是和這個一樣的,當字串需要加入引號時,可採用單引號與雙引號互相巢狀使用例如:
print ‘test “‘”test “‘”‘ –>> test “test”
“test ‘”‘test “‘” –>> test ‘test’
當我用單引號來表示一個字串時,如果要表示 Let’s Go 這個字串,必須這樣: s4 = ‘Let\’s go’,注意沒有,字串中有一個’,而字串又是用’來表示,所以這個時候就要使用轉義符\ (\,轉義符應該知道吧), 如果你的字串中有一大堆的轉義符,看起來肯定不舒服,python也很好的解決了這個問題,
如:s5 = “Let’s go”
這時,我們看,python知道你是用 ” 來表示字串,所以python就把字串中的那個單引號 ‘ , 當成普通的字元處理了,是不是很簡單。對於雙引號,也是一樣的,下面舉個例子
s6 = ‘I realy like “python”!’這就是單引號和雙引號都可以表示字串的原因了。
變數宣告
變數不需要宣告變數型態,Python會自行判斷該變數屬於哪種變數型態( runtime時才會進⾏binding),例如:
A = 10
B = "this is string"
同行多變數宣告,用逗號分隔,例如:
A = 10 , B= " this is apple"
變數多重設定
– Ex: orange, apple = 2, 5
變數可以更換型態
a = 5
a = "aaa"
全域變數可直接宣告在function之外,或在function內使用global 關鍵字
基本輸出
用print 變數名稱或值來進行基本輸出,輸出後會自動斷行,例如:
B = "this is apple"
C = "orange"
print (B,", but I want",C)
執行後輸出:this is apple , but I want orange
print("A","B","C","D",sep="|")
執行結果: A|B|C|D
引用外部檔案
用關鍵字import來引用外部檔案,該語法需寫在程式碼之開頭。
import 外部檔案名稱
例如:import file1
引用外部檔案時,若嫌外部檔案名稱太長,可使用關鍵字as,自訂名稱取代外部檔案名稱。
關鍵字 from 可以只引入外部檔案中部份定義的類別,不需要引入所有檔案內容。
例如:
from bs4 import BeautifulSoup as bs
從bs4(外部檔案)引入BeautifulSoup (類別)並重新命名為bs
運算子
a is b #判斷兩個變數的id是否相同,比的是記憶體位址
a == b #判斷兩個變數的值是否相同
yield 是在函式中回傳值但不結束函式,而return是在函式中回傳值並結束函式。以往在C/C++中想要在函式中回傳多個值,必需用回傳指標或陣列指標的方式;但在Pathon中可以透過yeild在函式中回傳多次,最後在函式外部接收這些值的物件再利用next方法依次取得回傳值。
物件
Python 中所有東⻄都是物件 (object) ,這是說 Python 裡的資料 (data) 都是物件。凡是物件都有:
• (id) 號碼
• (type) 型態
• (value) 數值
物件的值可以是可變的 (mutable) ,或是不可變的(immutable) ,通常這是說複合資料型態 (compound data type) 的元素 (element) 是否可以替換,例如序對 (tuple) 及字串是不可變的,⽽串列 (list) 或字典 (dictionary) 是可變的。
迴圈
for Var in iterable object :
執行內容
自可迭代物件(iterable object)中取出一個項目,代入至Var中,直到可迭代物件中的項目盡皆取出。
while Condition :|
執行內容
REF
沒有留言:
張貼留言