Python3學習筆記(1)

Python概論

  • Python 類僞代碼本質
  • 一個用編譯性語言比如 C 或 C++ 寫的程序可以從源文件(即 C 或 C++ 語言)轉換到一個你的計算機使用的語言(二進制代碼,即0和1)。這個過程通過編譯器和不同的標記、選項完成。當你運行你的程序的時候,連接/轉載器軟件把你的程序從硬盤複製到內存中並且運行。而 Python 語言寫的程序不需要編譯成二進制代碼。你可以直接從源代碼運行程序。在計算機內部,Python 解釋器把源代碼轉換成稱爲字節碼的中間形式,然後再把它翻譯成計算機使用的機器語言並運行。事實上,由於你不再需要擔心如何編譯程序,如何確保連接轉載正確的庫等等,所有這一切使得使用 Python 更加簡單。
  • 缺點:運行速度,有速度要求的話,用 C++ 改寫關鍵部分吧。入門級教材多,高級內容還是隻能看英語版。

關於Anaconda

致Python初學者:Anaconda入門使用指南
http://python.jobbole.com/87522/
Anaconda使用總結
http://python.jobbole.com/86236/
Anaconda完全入門指南
https://www.jianshu.com/p/eaee1fadc1e9

細節摘錄

聲明:基於菜鳥教程進行自學,摘錄內容旨在利於個人加深印象與日後查詢。具體內容詳見http://www.runoob.com/很好的學習網站,感謝。

  • 標識符
    第一個字符必須是字母表中字母或下劃線 _
    標識符的其他的部分由字母、數字和下劃線組成。
    標識符對大小寫敏感
  • 多行註釋可以用多個 # 號,還有 ‘’’ 和 “”"
  • 使用縮進來表示代碼塊,不需要使用大括號 {} 。縮進的空格數是可變的,但是同一個代碼塊的語句必須包含相同的縮進空格數
  • 字符串劃重點
    變量[頭下標:尾下標:步長]:頭下標到尾下標之前的那個
#!/usr/bin/python3
 
str='Runoob'
 
print(str)                 # 輸出字符串
print(str[0:-1])           # 輸出第一個到倒數第二個的所有字符
print(str[0])              # 輸出字符串第一個字符
print(str[2:5])            # 輸出從第三個開始到第五個的字符
print(str[2:])             # 輸出從第三個開始的後的所有字符
print(str * 2)             # 輸出字符串兩次
print(str + '你好')        # 連接字符串
 
print('------------------------------')
 
print('hello\nrunoob')      # 使用反斜槓(\)+n轉義特殊字符
print(r'hello\nrunoob')     # 在字符串前面添加一個 r,表示原始字符串,不會發生轉義
  • 空行並不是Python語法的一部分。書寫時不插入空行,Python解釋器運行也不會出錯。但是空行的作用在於分隔兩段不同功能或含義的代碼,便於日後代碼的維護或重構。記住:空行也是程序代碼的一部分。
  • print 默認輸出是換行的,如果要實現不換行需要在變量末尾加上 end=""
  • Python 中的變量不需要聲明。每個變量在使用前都必須賦值,變量賦值以後該變量纔會被創建。Python允許你同時爲多個變量賦值。您也可以爲多個對象指定多個變量。
  • 查詢變量所指的對象類型
    isinstance 和 type 的區別在於:
    type()不會認爲子類是一種父類類型。
    isinstance()會認爲子類是一種父類類型。
  • 標準數據類型
    Python3 的六個標準數據類型中:
    不可變數據(3 個):Number(數字)、String(字符串)、Tuple(元組);
    可變數據(3 個):List(列表)、Dictionary(字典)、Set(集合)。
  1. Number(數字):int、float、bool、complex(複數)
    在混合計算時,Python會把整型轉換成爲浮點數。
    Python還支持複數,複數由實數部分和虛數部分構成,可以用a + bj,或者complex(a,b)表示, 複數的實部a和虛部b都是浮點型
>>> 2 / 4  # 除法,得到一個浮點數
0.5
>>> 2 // 4 # 除法,得到一個整數
0
>>> 17 % 3 # 取餘 
2
>>> 2 ** 5 # 乘方
32

2.字符串
Python 使用反斜槓()**轉義特殊字符,可以作爲續行符**,表示下一行是上一行的延續。也可以使用 “”"…""" 或者 ‘’’…’’’ 跨越多行。
注意,Python 沒有單獨的字符類型,一個字符就是長度爲1的字符串。
Python 字符串不能被改變。向一個索引位置賦值,比如word[0] = 'm’會導致錯誤。
Python中的字符串有兩種索引方式,從左往右以0開始,從右往左以-1開始。

3.列表
列表可以完成大多數集合類的數據結構實現。列表中元素的類型可以不相同,它支持數字,字符串甚至可以包含列表(所謂嵌套)。
列表是寫在方括號 [] 之間、用逗號分隔開的元素列表。
在這裏插入圖片描述

>>>a = [1, 2, 3, 4, 5, 6]
>>> a[0] = 9
>>> a[2:5] = [13, 14, 15]
>>> a
[9, 2, 13, 14, 15, 6]
>>> a[2:5] = []   # 將對應的元素值設置爲 [] 
>>> a
[9, 2, 6]

List中的元素是可以改變的。
列表截取可以接收第三個參數,參數作用是截取的步長(每n步截取一個字符)

list = [ 'abcd', 786 , 2.23, 'runoob', 70.2,123,'a','v' ]
print(list[0:-1:2])
結果:['abcd', 2.23, 70.2, 'a']

4.Tuple(元組)
元組(tuple)與列表類似,不同之處在於元組的元素不能修改。元組寫在小括號 () 裏,元素之間用逗號隔開。
可以把字符串看作一種特殊的元組。
雖然tuple的元素不可改變,但它可以包含可變的對象,比如list列表。

構造包含 0 個或 1 個元素的元組比較特殊,所以有一些額外的語法規則
tup1 = ()    # 空元組
tup2 = (20,) # 一個元素,需要在元素後添加逗號

5.Set(集合)
構成集合的事物或對象稱作元素或是成員
基本功能是進行成員關係測試和刪除重複元素
可以使用大括號 { } 或者 set() 函數創建集合,注意:創建一個空集合必須用 set() 而不是 { },因爲 { } 是用來創建一個空字典。

#!/usr/bin/python3
 
student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'}
 
print(student)   # 輸出集合,重複的元素被自動去掉
 
# 成員測試
if 'Rose' in student :
    print('Rose 在集合中')
else :
    print('Rose 不在集合中')
 
 
# set可以進行集合運算
a = set('abracadabra')
b = set('alacazam')
 
print(a)
 
print(a - b)     # a 和 b 的差集
 
print(a | b)     # a 和 b 的並集
 
print(a & b)     # a 和 b 的交集
 
print(a ^ b)     # a 和 b 中不同時存在的元素
以上實例輸出結果:

{'Mary', 'Jim', 'Rose', 'Jack', 'Tom'}
Rose 在集合中
{'b', 'a', 'c', 'r', 'd'}
{'b', 'd', 'r'}
{'l', 'r', 'a', 'c', 'z', 'm', 'b', 'd'}
{'a', 'c'}
{'l', 'r', 'z', 'm', 'b', 'd'}

6.Dictionary(字典)
列表有序的對象集合字典無序的對象集合。兩者之間的區別在於:字典當中的元素是通過來存取的,而不是通過偏移存取。
字典是一種映射類型,字典用 { } 標識,它是一個無序鍵(key) : 值(value) 的集合。
鍵(key)必須使用不可變類型。
在同一個字典中,鍵(key)必須是唯一的。
注意:
1、字典是一種映射類型,它的元素是鍵值對。
2、字典的關鍵字必須爲不可變類型,且不能重複。
3、創建空字典使用 { }。

構造函數 dict() 可以直接從鍵值對序列中構建字典
>>>dict([('Runoob', 1), ('Google', 2), ('Taobao', 3)])
{'Taobao': 3, 'Runoob': 1, 'Google': 2}
 
>>> {x: x**2 for x in (2, 4, 6)}
{2: 4, 4: 16, 6: 36}
 
>>> dict(Runoob=1, Google=2, Taobao=3)
{'Runoob': 1, 'Google': 2, 'Taobao': 3}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章