Python初識--基礎
阿新 • • 發佈:2017-12-14
ble 語法 with 可讀性 ict 邏輯運算符 算術運算 note 邏輯運算
碎碎念 |
- 最初想寫一些機器學習算法的實現類的文章,但發現自己工作經驗不足,即使寫出來,也只是一些應用場景十分狹隘的小實驗;
- 了解到身邊有些朋友和同學也想了解學習一下腳本語言Python(畢竟是後起之秀),紙質、電子資源大家都有,可是總感覺學起來麽勁,就是沒有小夥伴一起學嘛;
- 綜上,我打算寫一個系列的Python教程,側重點是為機器學習和深度學習打下基礎。
- 這或許在別人看起來可能是微不足道的工作,但對我而言,要全面、系統且有側重點地整理Python知識,這不僅是對我過去Python學習的檢驗,也是對我現在的時間管理的一個挑戰。
- 我會堅持下去!歡迎大家留言騷擾,不亦樂乎,能力所限,歡迎指教。
前言 |
- 實驗環境: Python 3.6;
- 本文完整示例:下載示例
基本知識 |
Python的特點
- 面向對象的解釋性語言;
- 簡單易學;
- 豐富的庫;
- 強制使用制表符作為語句縮進(white space)。
Python的優缺點
- 優點
- 簡單、易學;
- 免費、開源;
- 可擴展性、可嵌入性;
- 豐富的庫。
- 缺點
- 運行速度較慢;
- 中文資料匱乏;
- 代碼不能加密。
Anaconda安裝與配置
十分推薦Anaconda,它是一個集成開發環境,集成了眾多常用Python庫,免去了開發環境配置的繁瑣,讓我們更專心地去學習真正的技術。大贊
- 下載地址:
國內清華鏡像,速度很快滴。
註意選擇好自己電腦對應的版本號。
安裝方法:一路next。 - jupyter notebook相關配置
- 配置默認啟動目錄:配置方法
Pycharm的安裝與配置
- 下載安裝
官方下載地址
安裝方法:一路next。 - 註冊服務器:
server選項裏邊輸入 http://elporfirio.com:1017/
或者:server選項裏邊輸入 http://idea.imsxm.com/
使用激活碼的小夥伴點這裏復制激活碼。 - Pycharm漢化
如果英文水平ok,就不建議漢化了。
Pycharm漢化包下載地址
復制resources_cn.jar放在PyCharm安裝目錄下的lib文件夾。
Python註釋語法
- 註釋的作用
- 增加程序的可讀性;
- 作為調試時使用;
- 提高團隊的合作效率。
- 註釋的分類
- 單行註釋;
以符號#開頭,表示當前行其後的內容為註釋。 - 多行註釋;
- 采用三對單引號表示
‘‘‘多行註釋‘‘‘
。
- 采用三對單引號表示
- 單行註釋;
Python中的變量 |
Python中的變量
- 什麽是變量?
用來存儲數據的量。 - 什麽是標識符?
標識符是用戶自定義的,如變量名、函數名等。 - 標識符的命名規則
- 只能包含字母、數字和下劃線;
- 只能以字母或下劃線開頭,開頭不能使用數字;
- 不能包含空格,可使用下劃線分割單詞;
- 不能使用Python中的關鍵字作為變量名;
- Python嚴格區分大小寫;
- 建議使用駝峰命名法:
- 大駝峰:VariableName;
- 小駝峰:variableName。
- 常用關鍵字
在Python中查看Python關鍵字
In[2] : import keyword
In[3] : keyword.kwlist
Out[3]:
[‘False‘, ‘None‘,‘True‘, ‘and‘, ‘as‘, ‘assert‘, ‘break‘,
‘class‘, ‘continue‘, ‘def‘, ‘del‘, ‘elif‘, ‘else‘, ‘except‘,
‘finally‘, ‘for‘, ‘from‘, ‘global‘, ‘if‘, ‘import‘, ‘in‘, ‘is‘,
‘lambda‘, ‘nonlocal‘, ‘not‘, ‘or‘, ‘pass‘, ‘raise‘, ‘return‘,
‘try‘, ‘while‘, ‘with‘, ‘yield‘]
Python中的數據類型 |
數據類型
- Number數字
- int 整數;
- float 浮點型;
- complex 復數;
- bool 布爾。
- string字符串
- str = “abcd”;
- str = ‘ab‘ + ‘cd‘;加號可實現字符串的拼接;
- string可以被索引和切片;切片遵循“左開右閉”。
- list列表
- list放在方括號之間,元素使用逗號隔開;
- 和字符串一樣,list可以被索引和切片;切片遵循“左開右閉”;
- list可以使用加號(+)操作進行拼接;
- list中的元素可以被改變。
- tuple元組
- 元組的元素不可被改變;
- 元組可以包含可變的對象,如,list;
- 構成0個或1個元素的元組的特殊語法:
- tuple1=() #空元祖
- tuple2=(1,) #一個元素,需要在元素後添加逗號
- sets集合
- 確定性;
- 互異性;
- 無序性。
- Dictionary字典
- 字典是一種映射類型,元素為鍵值對;
- 鍵(key)必須使用不可改變的數據類型(字符串、數值、元組),在同一個字典中鍵(key)必須唯一;
Python中的運算符 |
運算符
- 算術運算符
- 加+ : 兩個數相加;
c = a + b
- 減- : 兩個數相減;
c = a - b
- 乘* : 兩個數相乘;
c = a * b
- 除/ : 兩個數相除;
c = a / b
- 取模(取余)% : 返回兩個數除法的余數;
c = a % b
- 冪** : 冪運算;相當於內置函數pow(a, b);
c = a ** b
- 取整除// :取兩個數除法的整數部分。
c = a // b
- 加+ : 兩個數相加;
- 賦值運算符
- 等號= : 等值賦值;
- 加法賦值+=: 先做加法運算再賦值;
- 減法賦值+=: 先做減法運算再賦值;
- 乘法賦值*=: 先做乘法運算再賦值;
- 除法賦值/=: 先做除法運算再賦值;
- 取余賦值%=: 先做取余運算再賦值;
- 冪賦值
**=
: 先做冪運算再賦值; - 取整除賦值//=: 先整除再賦值。
- 比較運算符
- 等於==
- 大於>
- 小於<
- 大於等於>=
- 小於等於<=
- 邏輯運算符
- 與:and
if condition1 and condition2:
- 或:or
if condition1 or condition2:
- 非:not
if not condition:
- 與:and
Python中的位運算 |
- 位運算符
- 按位與運算& :二進制位中,對應位置都為1得1,其他情況都為0;
- 按位或運算| : 二進制位中,對應位置都為0得0,其他情況都得1;
- 按位異或運算^ : 二進制位中,對應位置相同得0,不同得1;
- 按位取反運算~ :按位取反;註意,負數以補碼形式存儲,轉化為十進制時,首位(符號位)不變,其他位按位取反,末位+1。
- 左移位運算<< :
a << b
表示a左移b位,高位丟棄,低位補0; - 右移位運算>> :
a >> b
表示a右移b位,左邊空出的位用0或者1填補。- 正數用0填補,負數用1填補。
- 示例:
下面只給出左移與右移運算示例哈
### 左移與右移運算
## 輸出二進制數字
a = 15
b = 3
print("%d的二進制為:%s" % (a, "{:b}".format(a).rjust(8, ‘0‘)) )
print("%d的二進制為:%s" % (b, "{:b}".format(b).rjust(8, ‘0‘)) )
# 將a左移b位
print(‘=*‘*10, ‘將a左移b位‘, ‘=*‘*10)
l3 = a << b
print("%d的二進制為:%s" % (l3, "{:b}".format(l3).rjust(8, ‘0‘)) )
# 將a右移b位
print(‘=*‘*10, ‘將a右移b位‘, ‘=*‘*10)
r3 = a >> b
print("%d的二進制為:%s" % (r3, "{:b}".format(r3).rjust(8, ‘0‘)) )
## 負數的左右移操作
c = -7
print("\n%d的二進制為:%s" % (b, "{:b}".format(b).rjust(8)) )
print("%d二進制為:%s" % (c, "{:b}".format(c).rjust(8)) )
# 將c左移b位
print(‘=*‘*10, ‘將c左移b位‘, ‘=*‘*10)
nl3 = c << b
print("%d的二進制為:%s" % (nl3, "{:b}".format(nl3).rjust(8)) )
# 將c右移b位
print(‘=*‘*10, ‘將c右移b位‘, ‘=*‘*10)
nr3 = c >> b
print("%d的二進制為:%s" % (nr3, "{:b}".format(nr3).rjust(8)) )
輸出:
========== 左移與右移運算 ==========
15的二進制為:00001111
3的二進制為:00000011
========== 將a左移b位 ==========
120的二進制為:01111000
========== 將a右移b位 ==========
1的二進制為:00000001
3的二進制為: 11
-7二進制為: -111
========== 將c左移b位 ==========
-56的二進制為: -111000
========== 將c右移b位 ==========
-1的二進制為: -1
總結 |
- 本文完整示例:下載示例
- 本文給大家介紹了環境的搭建與配置,推薦Anaconda,講解了Python中最基礎的一些概念、數據類型、算數運算符和邏輯運算符等。光說不練假把式,所以,多多動手,擼代碼!加油。
- 能力有限,歡迎指錯交流;如果感覺不錯,右下角支持下哈。^-^
歡迎關註個人微信公眾號WaltSmithML或新浪微博WaltSmith,本人主要方向為機器學習和深度學習。非常熱烈歡迎一起交流學習哈,除了學習,還可免費幫忙download論文或者書籍哈==============
???微信公眾號?????????新浪微博???
Python初識--基礎