python介紹(基礎1)
阿新 • • 發佈:2019-01-02
Python介紹(py基礎1)
1.1 py的出生與應用
python的創始人為吉多·範羅蘇姆(Guido van Rossum)。1989年的聖誕節期間,吉多·範羅蘇姆(中文名字:龜叔)為了在阿姆斯特丹打發時間,決心開發一個新的指令碼解釋程式,作為ABC語言的一種繼承。
(龜叔:2005年加入谷歌至2012年,2013年加入Dropbox直到現在,依然掌握著Python發展的核心方向,被稱為仁慈的獨裁者)。
1.2 python2與python3的區別
py2.x 原始碼重複,冗長
py3.x 原始碼規範化,簡單化,清晰化
1.3 py的程式語言的劃分
機器語言: 優點:執行效率高 缺點:開發效率低,學習難度大 組合語言: 優點:執行效率高,不如機器語言快 缺點:學習難度大,開發效率低,比機器語言稍微好點 高階語言:
1.3.1 解釋型:
程式碼逐行解釋,逐行執行。
代表語言: python,php
優點:開發效率高,跨平臺
缺點:執行效率低
1.3.2 編譯型:
將程式碼一次性全部變易成二進位制,然後執行。
代表語言:C C++
優點: 執行效率高
缺點: 開發效率低,不能跨平臺。
1.4 py的優缺點
1.4.1 優點:
1、開發效率高,python含有N多個第三方庫。
2、高階語言,不用考慮底層或者記憶體級別。
3、可拓展性。可以加入C++的程式。
4、可嵌入性。可將python程式碼嵌入到C++程式中。
5、可移植性。不同平臺的移植。
1.5 缺點:
1、執行速度相對慢。 2、程式碼不能加密。 3、執行緒不能利用多CPU。
1.6 py的種類
1、Cpython: 官方推薦,用C語言寫的。
2、Jpython: 可以在java平臺上執行的python。可以解釋成java識別的位元組碼。
3、Ironpython: 可以在.net平臺上執行的,可以解釋成.net識別的位元組碼。
4、Ipython: 在Cpython基礎上拓展的,互動式直譯器。
5、pypy: 利用JIT技術,實現了動態編譯,執行速度非常快。
1.7 執行第一個python程式
print (‘hello world’) python3.x:中英文都可以 python2.x:英文字母,特殊字元,數字都行,中文會報錯。 中文解決方法:# _*_ encoding:utf-8 _*_
1.8 變數(可變的量)
將軟體的一些目錄放到計算機的指定位置,方便在終端中使用。
1.8.1 why:
'''
print(1+2+3+4+5)
print((1+2+3+4+5)*3/2)
print(((((1+2+3+4+5)*3/2))+100)/22)
'''
x = 1+2+3+4+5
y = x*3/2
z = (y+100)/22
print(z)
1.8.2 what:
變數,將程式運算的中間結果這哪是儲存起來,以便後續程式呼叫。
1.8.3 how:
1,變數必須要有數字,字母,下劃線,任意組合。
2,變數不能數字開頭。
3,不能是python中的關鍵字。
['and', 'as', 'assert', 'break', 'class', 'continue', 'def',
'del', 'elif', 'else', 'except', 'exec', 'finally', 'for',
'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not',
'or', 'pass', 'print', 'raise', 'return', 'try', 'while',
'with', 'yield']
4,變數要具有可描述性。
name = 12 錯
5,變數不建議使用中文。
6,變數不能過長。
fdhsjkfdsakfljfkl = 12
1.8.4 官方推薦:(變數定義的方式)
1.8.4.1 駝峰體
AgeOfOldboy = 56
NumberOfStudents = 80
1.8.4.2 下劃線(推薦方式)
age_of_oldboy = 56
number_of_students = 80
1.8.5 where:
程式中無處不在,想要暫存一些資料,經常使用的。
1.9 常量
why: 生活中π,身份證號,G,等等不變的量,程式中也是如此。
what:常量,一直不變的量。
how:將變數全部大寫,常量。
NAME = 'alex'
where: 設定一些不變的量,放在檔案的最上面。
1.10 註釋
1.10.1 why:
學習中,文言文會出現一些晦澀難懂,典故,這樣需要註釋。
1.10.2 what:
幫助你解釋說明。
1.10.3 how:
單行註釋:#
多行註釋:''' 被註釋內容 ''' """ 被註釋內容 """
註釋不宜多,宜精。
1.10.4 where:
晦澀難懂的程式語句。
函式,類,檔案。
1.11 基礎資料型別初識
1.11.1 why:
1.11.1.1 整數(int)
1,2,3,,30,100 ...
主要用於計算,計數,+-*/%
在32位機器上,整數的位數為32位,取值範圍為-2**31~2**31-1,即-2147483648~2147483647
在64位系統上,整數的位數為64位,取值範圍為-2**63~2**63-1,即-9223372036854775808~9223372036854775807
1.11.1.2 字串(str)
在python中,凡是用引號引起來的資料都是字串
單引號,雙引號,三引號引起來沒有任何區別
name = '太白jin星'
name = "太白jin星"
name = '''太白jin星'''
單雙引號配合使用: msg = "My name is Alex , I'm 22 years old!"
多引號用於換行
msg = '''
今天我想寫首小詩,
歌頌我的同桌,
你看他那烏黑的短髮,
好像一隻炸毛雞。
'''
print(msg)
1.11.1.3 布林值(bool)
True., False
作用:用於邏輯運算的判斷
1.12 使用者互動input
name = input('請輸入姓名:')
age = input('請輸入年齡:')
sex = input('請輸入性別:')
msg = "我叫" + name + "今年" + age + "性別" + sex
print(msg)
1.13 流程控制語句if
1.13.1 a、單獨if
if 2 > 3:
print(666)
print(333)
1.13.2 b、if else. 二必選一
name = input('>>>')
if name == 'alex':
print('He is SB')
else:
print(666)
1.13.3 c、if elif elif …
num = int(input('>>>'))
if num == 6:
print('請你吃飯')
elif num == 4:
print('跟我回家...')
elif num == 2:
print('大寶劍')
1.13.4 d、if elif elif … else
1.13.4.1 例子1:
num = int(input('>>>'))
if num == 6:
print('請你吃飯')
elif num == 4:
print('跟我回家...')
elif num == 2:
print('大寶劍')
else:
print('太笨了你....')
print(666)
1.13.4.1 例子2:
score = int(input("輸入分數:"))
if score > 100:
print("我擦,最高分才100...")
elif score >= 90:
print("A")
elif score >= 60:
print("C")
elif score >= 80:
print("B")
elif score >= 40:
print("D")
else:
print("太笨了...E")
1.13.5 e、if 巢狀
username = input('請輸入使用者名稱:')
password = input('請輸入密碼:')
if username == 'alex' :
if password == 'sb':
print('成功登陸')
else:
print('密碼錯誤')
else:
print('使用者名稱錯誤')
1.14 流程控制語句while
1.14.1 例子1:
while True:
print('忐忑')
print('大悲咒')
print('海草')
print('想太多')
1.14.2 例子2:
flag = True
while flag:
print(111)
print(222)
flag = False
print(333)
1.14.3 例子3:
flag = True
while flag:
print(111)
print(222)
flag = False
print(333)
print(777)
1.14.4 例子4:
flag = True
count = 1
while flag:
print(count)
count = count + 1
if count == 101:
flag = False
count = 1
while count < 101:
print(count)
count = count + 1 # count += 1
1.14.5 例子5:
# break 迴圈中只要遇到break就直接跳出迴圈
while True:
print(111)
print(222)
break
print(333)
flag = True
while flag:
print(111)
print(222)
flag = False
print(333)
1.14.6 例子6:
# continue: 遇到continue,跳出本次迴圈,繼續下一次迴圈
while True:
print(111)
print(222)
continue
print(333)
1.14.7 例子7:
# while else: 只要while迴圈被break打斷,則不走else程式。
count = 0
while count <= 5 :
count += 1
print("Loop",count)
if count == 3:
break
else:
print("迴圈正常執行完啦")
print("-----out of while loop ------")
1.14.8 例子8:
count = 1
while count <= 3:
username = input('name>>: ')
password = input('pass>>: ')
if username == 'ljx' and password == '123456':
print ('登入成功')
while True:
cmd = input('cmd >>: ')
print('繼續輸入命令')
if cmd == 'q':
break
break
else:
print('使用者名稱或密碼錯誤')
print('還剩%d次機會' %(3 - count))
count += 1
1.14.9 例子9:
count = 1
tag = True
while tag:
if count > 3:
break
username = input('pls your name: ')
password = input('pls your pass: ')
if username == 'ljx' and password == '123456':
print('登入成功!!!')
while tag:
cmd = input('cmd >>>: ')
print('繼續輸入命令')
if cmd == 'q':
tag = False
else:
print('使用者名稱或密碼錯誤!')
print('輸入錯誤,還剩%d次機會' %(3-count))
count += 1
1.15 檔案頭
#!/usr/bin/env python
# _*_ coding: utf-8 _*_