Python3(2) Python語法基礎

本系列主要學習Python的基本使用和語法知識,后續可能會圍繞著AI學習展開。
Python3 (1) Python語言的簡介
Python3 (2) Python語法基礎
Python3 (3) Python函數
Python3 (4) Python高級特性
Python3 (5) Python 函數式編程
Python3 (6) Python 模塊
Python3 (7) Python 面向對象編程
Python3 (8) Python 面向對象高級編程
Python3 (9) Python 錯誤、調試和測試
Python3 (10) Python IO編程
Python3 (11) Python 進程和線程
Python3 (12) Python 常用內建模塊
Python3 (14) Python 網絡編程
python基礎部分相對簡單,屬于動態語言,大小寫敏感,代碼塊通過縮進表示(約定4個空格鍵進行縮進,沒有格式化的功能),注釋采用“#”開頭,典型的腳本語言特征,文件以“.py”格式保存。

數據類型

1. 整數

python 中整數沒有大小限制,超出一定范圍就直接表示為 inf(無限大)
python 通常用十進制(-10000、1234)、十六進制(0xa2b3c4d5、0xff00)
python 整數的運算是精確的(10/3 = 3.3333333333333335,10//3 = 3 只取整數部分)

2. 浮點數

python 中浮點數沒有大小限制,超出一定范圍就直接表示為 inf(無限大)
python 中浮點數寫法有兩種 一般寫法(1.234)科學記數法(123.4e-2)
python 浮點數的運算會有四舍五入的誤差

3. 字符串

python 中字符串用 ''('abc')或者""("abc")表示 ,多行字符串用''' ''' ('''abc
def''')
python 中支持轉義符,也可以通過r'abc'或r'''abc'''來屏蔽轉義符
python 中支持占位符“ %d 整數 ”、“%f 浮點數”、“%s 字符串”、“%x 十六進制整數”
python 中支持 format() 格式化 “'我是 {0}, 體重{1:.1f}kg'.format('小明', 60.125)”
python 中字符串一般采用 “utf-8” 編碼,在文本首行進行申明,如下:

# -*- coding:utf-8 -*-

# 驗證 r 與多行字符串的顯示 并且屏蔽轉義符
print(r'''hello,\n 
python''')

# 驗證占位符的使用
print('abc%sef%.1f'%('d',12.345))

# 驗證format()的使用
print('我是{0},體重{1:.1f}kg'.format('小明',60.125))

輸出結果:

hello,\n 
python
abcdef12.3
我是小明,體重60.1kg

4. 布爾值

python 中布爾值用True、False 表示(注意是大寫)
python 中支持 "and"、"or"、"not" 運算

5. 空值

python 中空值用 “None” 表示是一個特殊的值,不同于“0”

6. 列表 list

Python內置的一種數據類型是列表:list。list是一種有序的集合,可以隨時添加和刪除其中的元素
list中的元素可以是不同的數據類型

#定義list
names = ['張三','李四','王五']
print(names)

#獲取list元素個數
print(len(names))

#獲取list某個元素
print(names[0])

#獲取list倒數某個元素
print(names[-1])

#追加元素到末尾
names.append('趙六')
print(names)

#指定位置插入元素
names.insert(1,'456')
print(names)

#替換指定位置的元素
names[0]= 123
print(names)

#刪除list末尾元素
names.pop()
print(names)

#刪除指定位置的元素
names.pop(0)
print(names)

#list中嵌套list
ages = [16,17,18]
names.insert(1,ages)
print(names)

#得到list中嵌套list的某個元素
print(names[1][0])

輸出結果:

['張三', '李四', '王五']
3
張三
王五
['張三', '李四', '王五', '趙六']
['張三', '456', '李四', '王五', '趙六']
[123, '456', '李四', '王五', '趙六']
[123, '456', '李四', '王五']
['456', '李四', '王五']
['456', [16, 17, 18], '李四', '王五']
16

7. 元組 tuple

元組:tuple。tuple和list非常類似,但是tuple一旦初始化就不能修改,沒有增刪改查的方法

#定義tuple
names=('張三','李四','王五')
print(names)

#定義 空的tuple
names = ()
print(names)

#定義 一個元素的tuple
names =('張三',)
print(names)

輸出結果:

('張三', '李四', '王五')
()
('張三',)

8. 字典 dict

Python內置了字典:dict的支持,全稱dictionary,在其他語言中也稱為map,使用鍵-值(key-value)存儲,具有極快的查找速度。優缺點與java的map一致

#定義dict
dicts = {'張三': 16, '李四': 17, '王五': 18}
print(dicts)

#根據key查找對應的value
print(dicts['張三'])

#替換key對應的value
dicts['張三']=20
print(dicts)

#判斷key是否存在
print('趙六'in dicts)

#通過get方法取value,key不存在可以設置默認值
print(dicts.get('趙六',-1))

輸出結果:

{'張三': 16, '李四': 17, '王五': 18}
16
{'張三': 20, '李四': 17, '王五': 18}
False
-1

9. 只存key的字典 set

set和dict類似,也是一組key的集合,但不存儲value。由于key不能重復,所以,在set中,沒有重復的key。
set可以看成無序和無重復元素的集合,可以做交集、并集等操作

# 定義Set
sets = set([1, 2, 4])
print(sets)

# 驗證Set元素的唯一性
repeatSets = set([1,2,4,2,4,1])
print(repeatSets)

#set中 添加一個key
sets.add(3)
print(sets)

#set中 移除一個key
sets.remove(1)
print(sets)

#set 做交集、并集操作
s1 = set([1,2,3])
s2 = set([3,4,5])
print(s1&s2)
print(s1|s2)

輸出結果:

{1, 2, 4}
{1, 2, 4}
{1, 2, 3, 4}
{2, 3, 4}
{3}
{1, 2, 3, 4, 5}

變量

python 中變量可以是任意數據類型
python 中同一個變量可以反復賦值,而且可以是不同類型的變量(動態語言的特性)
python 支持多種數據類型,在計算機內部,可以把任何數據都看成一個“對象”,而變量就是在程序中用來指向這些數據對象的,對變量賦值就是把數據和變量給關聯起來

常量

python 中通常用全部大寫的變量名表示常量 (PI = 3.14159265359)

條件語句

if...elif...

# if...else...
a = input("a: ")  # int
b = input("b: ")  # int
a = int(a)
b = int(b)
if (a > b):
    print("max: ", a)
else:
    print("max: ", b)

# if...elif...else...
score = input("score: ")  # string
score = int(score)
if (score >= 90) and (score <= 100):
    print("A")
elif (score >= 80 and score < 90):
    print("B")
elif (score >= 60 and score < 80):
    print("C")
else:
    print("D")

輸出結果:

a: 10
b: 15
max:  15
score: 60
C

循環語句

for...in...循環

# for...in...
a = 0
for x in range(5):
    a = a + x
    print(a)

輸出結果:

0
1
3
6
10

while...循環

# while
n = 0
while n < 5:
    n = n + 1
    print(n)

輸出結果:

1
2
3
4
5

關鍵字

break、continue 使用方法與其他語言相同

參考

https://www.python.org
http://www.runoob.com/python3/python3-tutorial.html
https://www.liaoxuefeng.com

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,698評論 6 539
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,202評論 3 426
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 177,742評論 0 382
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,580評論 1 316
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,297評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,688評論 1 327
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,693評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,875評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,438評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,183評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,384評論 1 372
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,931評論 5 363
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,612評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,022評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,297評論 1 292
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,093評論 3 397
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,330評論 2 377

推薦閱讀更多精彩內容

  • http://python.jobbole.com/85231/ 關于專業技能寫完項目接著寫寫一名3年工作經驗的J...
    燕京博士閱讀 7,605評論 1 118
  • 0. 序言 python 是一門腳本語言:封裝性強,語法簡潔,開發效率高,只用函數open就可以打開一個txt文件...
    付凱強閱讀 1,247評論 0 5
  • Python 簡介Python 是一個高層次的結合了解釋性、編譯性、互動性和面向對象的腳本語言。Python 的設...
    在暴風雨中逆襲閱讀 1,739評論 0 12
  • 本教程基于Python 3,參考 A Byte of Python v1.92(for Python 3.0) 以...
    yuhuan121閱讀 3,089評論 1 6
  • 離老家屋后不遠的地方 有一條彎彎的小河 日夜流淌著清清的河水 四季有著不同的歌 時而熱烈奔放,浪花朵朵 也會安安靜...
    碧海青天2017閱讀 193評論 1 0