1 Python基礎
阿新 • • 發佈:2018-11-26
pycharm 字節 watermark 時代 iba 開發效率 false 了吧 國內 python基礎
python的歷史
- python由吉多.範羅蘇姆(簡稱:龜叔)在1989年聖誕節期間為打發假期時間創建的
- python崇尚優美、簡單、清晰
- 國內python主要應用的公司:豆瓣、知乎
- python主要應用領域:雲計算、web開發、科學計算、系統運維、金融
- 1991年第一個編譯器誕生
- 2004年python2.4 Djiango的誕生具有跨時代的意義
python的優缺點
優點
- python的定位是優雅、明確、簡單
- 開發效率非常高—有強大的第三方庫
- 高級語言
- 可移植性—可移植性到其他平臺上
- 可擴展性—可以把部分程序用C或C++編寫,然後在python中使用他們
- 可嵌入性—可以把python嵌入C或C++程序中
缺點
- 速度慢
- 代碼不能加密
- 線程不能利用多CPU
python的環境
編譯型
編譯型:一次性將所有程序編譯成二進制文件,然後在進行運行
優點:運行速度快
缺點:開發效率低(出現bug需要從頭進行編譯)、不能跨平臺
編譯型語言典型例子:c c++等
解釋性
解釋型:當程序執行時,一行一行的解釋
優點:開發效率高、可以跨平臺
缺點:運行速度慢
解釋型語言典型例子:python、php等等
python是一門動態解釋型的強類型定義語言
python的種類
- CPython:是使用最廣泛的解釋器
- IPython:是基於CPython之上的一個交互式解釋器
- PyPy:他的目標在於執行速度,但是開發效率慢
- JPython:運行在Java平臺上的python解釋器
- IronPython:在微軟上運行的python解釋器
- 這幾種的圖形解釋
變量
- 變量就是將一些運算的中間結果暫存到內存中,方便後續代碼的調用
例:name = ‘taibai‘
變量的定義規則
- 必須由數字、字母、下劃線的任意組合,且不能以數字開頭
- 不能是python中的關鍵字
- 不能是中文
- 變量具有可描述性
變量的定義與賦值(=)
name = ‘jooker‘ num = 1 python中變量賦值不需要類型聲明 每個變量在使用前都必須先賦值,變量賦值以後該變量才會被創建 每個變量在內存中被創建,都包括變量的標識、名稱和數據這些信息 等號(=)用來給變量進行賦值
常量
常量就是一直不變的量,在python中是沒有常量的,但是通常在python的定義中大寫就是常量
例:BIR_OF_CHINA = 19949
註釋
- 單行註釋:# 被註釋的內容
- 多行註釋:‘‘‘被註釋的內容‘‘‘或者"""被註釋的內容""""
用戶交互input
- input出來的數據類型全部都是str
name = input(‘Pls 輸入你的名字:‘)
age = input(‘Pls 輸入你的年齡:‘)
print(name,age)
pycharm的安裝
註意:安裝pycharm時要選擇專業版的而不是社區版的
初識編碼
- 電腦的傳輸以及數據的存儲都是比特流(二進制的碼流 0101001)
- 最早的密碼本是ascii碼,涵蓋了英文字母的大小寫、特殊字符和數字
- 由於ascii碼只能表示256種可能,太少,所以創建了萬國碼unicode
- unicode中4個字節表示一個中文
- utf-8是unicode的升級版,用3個字節表示一個中文
- gbk是國人自己發明的,用2個字節表示一個中文,僅在國內使用
- 8bit == 1byte
- 1024byte == 1kb
- 1024kb == 1MB
- 1024MB == 1GB
格式化輸出
%
- %代表占位符
- %s 代表str
- %d 代表數字
- %% 代表單純的%
例子:
name = input(‘Pls 輸入你的名字:‘)
age = input(‘Pls 輸入你的年齡:‘)
job = input(‘Pls 輸入你工作:‘)
hobbie = input(‘Pls 輸入你的愛好:‘)
msg = ‘‘‘------info of %s------
Name: %s
Age: %d
Job: %s
Hobbie: %s
------end of------
‘‘‘%(name,name,int(age),job,hobbie)
print(msg)
運行結果為:
Pls 輸入你的名字:jooker
Pls 輸入你的年齡:18
Pls 輸入你工作:Operation Engineer
Pls 輸入你的愛好:girl
------info of jooker------
Name: jooker
Age: 18
Job: Operation Engineer
Hobbie: girl
------end of------
format
format的三種方法
#對應輸入
s = ‘我叫{},今年{},愛好{},再說一遍,我叫{}‘.format(‘jooker‘,‘18‘,‘girl‘,‘jooker‘)
print(s)
#輸入相應的索引
s = ‘我叫{0},今年{1},愛好{2},再說一遍,我叫{0}‘.format(‘jooker‘,‘18‘,‘girl‘)
print(s)
#以鍵值對輸入,可以打亂順序
s = ‘我叫{name},今年{age},愛好{hobbile},再說一遍,我叫{name}‘.format(age = 18,name = ‘jooker‘,hobbile = ‘girl‘)
print(s)
運行結果為:
我叫jooker,今年18,愛好girl,再說一遍,我叫jooker
我叫jooker,今年18,愛好girl,再說一遍,我叫jooker
我叫jooker,今年18,愛好girl,再說一遍,我叫jooker
name = input(‘Pls 輸入你的名字:‘)
age = input(‘Pls 輸入你的年齡:‘)
hobbile = input(‘Pls 輸入你的愛好:‘)
s = ‘我叫{0},今年{1},愛好{2},再說一遍,我叫{0}‘.format( name,age,hobbile)
print(s)
s = ‘我叫{name},今年{age},愛好{hobbile},再說一遍,我叫{name}‘.format(age = age,name = name,hobbile = hobbile)
print(s)
運行結果為:
Pls 輸入你的名字:jooker
Pls 輸入你的年齡:18
Pls 輸入你的愛好:girl
我叫jooker,今年18,愛好girl,再說一遍,我叫jooker
我叫jooker,今年18,愛好girl,再說一遍,我叫jooker
運算符
邏輯運算符
- or、and、not
- 優先級:() > not > and > or
- x or y:若x非0返回的結果為x
例子:
print(2 > 1 and 1< 4 or 2 < 3 and 9 > 6 or 2 < 4 and 3 < 2)
分析:
2 > 1 and 1< 4 T
2 < 3 and 9 > 6 T
2 < 4 and 3 < 2 F
所以:
T or T or F
所以結果為:T
基本循環
條件語句:if
語法
第一種if:單選
if 4 > 5 :
print(‘我請你喝酒‘)
print(‘喝什麽酒‘)
if 4 > 5 :
print(‘我請你喝酒‘)
else:
print(‘喝什麽酒‘)
第二種if:多選
num = input(‘Pls 輸入你猜的數字:‘)
if num == ‘1‘ :
print(‘抽煙‘)
elif num == ‘2‘ :
print(‘一起喝酒‘)
elif num == ‘3‘ :
pring(‘新開了一家,走看看去‘)
else:
print(‘你猜錯了‘)
source = int(input("Pls 輸入你的分數:"))
if source > 100 :
print(‘哎呀~臥槽 滿分才100分‘)
elif source > 90 :
print(‘我擦,優秀 牛逼呀‘)
elif source > 70 :
print(‘中等 一般般‘)
elif source > 60 :
print(‘剛及格‘)
else:
print(‘你也太菜了吧,還不及格‘)
第三種if:嵌套
num = input(‘Pls 輸入你猜的數字:‘)
age = input(‘Pls 輸入你猜的年齡:‘)
if name == ‘小二‘ :
if age == ‘18‘ :
print(666)
else:
print(‘年齡不對‘)
else:
print(‘錯了…… 不是本人‘)
循環語句:while
語法
while 條件:
循環體:
如果條件為真,則循環體執行
如果條件為假,則循環體不執行
無限循環
while True:
print(‘我們不一樣‘)
print(‘在人間‘)
print(‘癢‘)
print(‘222‘)
執行結果是一直循環:
我們不一樣
在人間
癢
- 執行過程
終止循環之條件終止
flag = True
count = 1
while flag:
count += count
if count > 100:
flag = False
print(‘結束‘)
終止循環之break
終止整個循環
print(‘11‘)
while True:
print(‘22‘)
print(‘33‘)
break
print(‘44‘) # 強制終止循環
print(‘55‘)
運行結果為:
11
22
33
55
終止循環之continue
終止本次循環繼續下次循環
count = 0
while count<=100:
count += 1
if count > 5 and count < 95:
continue
print(‘loop‘,count)
print(‘------out of while loop------‘)
運行結果為:
loop 1
loop 2
loop 3
loop 4
loop 5
loop 95
loop 96
loop 97
loop 98
loop 99
loop 100
loop 101
------out of while loop------
while else
當循環被break打斷時,不會執行else
count = 0
while count<=5:
count += 1
if count == 3:
pass
print(‘loop‘,count)
else:
print(‘循環正常執行完了‘)
print(‘------out of while loop------‘)
運行結果為:
loop 1
loop 2
loop 3
loop 4
loop 5
loop 6
循環正常執行完了
------out of while loop------
count = 0
while count<=5:
count += 1
if count == 3:
break
print(‘loop‘,count)
else:
print(‘循環正常執行完了‘)
print(‘------out of while loop------‘)
運行結果為:
loop 1
loop 2
------out of while loop------
for循環(有限的循環)
s = ‘jookerORroot‘
for i in s:
print(i)
運行結果為:
j
o
o
k
e
r
O
R
r
o
o
t
1 Python基礎