Python 基本语法

目录

  • 缩进与冒号
  • 变量赋值
  • 输入与输出
  • 判断语句
  • 循环语句
  • 列表
  • 元组
  • 字典
  • 集合

缩进与冒号

说到 Python,不得不提到 Python 独有的语法特点 - 缩进和冒号。

  • 在 Python 中不需要像其他编程语言,如 Java 和 C++ 等等,使用 " ; " 来表示一行语句的结束,或是使用 " { } " 用来划分代码块。

  • 在 Python 中,缩进是一种基本语法,用来区分代码之间的层次关系;冒号也是一种基本语法,一般用在 if...else...,for...in... 和 while 语句中,用来划分代码块,可参考本文下面关于这两种语法的讲解。

  • 在 Python 中,同等层次的缩进代表同等层次下的代码,以 while 语法举例,之后会有关于 while 语法的讲解,这里仅用作讲解 [ 缩进 ] 和 [ 冒号 ] 的使用方式。

sum = 0
num = 1
while num < 10:
    sum += num
    num += 1
print (sum)

运行结果

45
  • 上述代码用以计算 1 ~ 9 的和,其中 " : " 用来表示 while 代码块包含的内容,缩进用来区分代码的层次,同一层次下的代码使用不同层次的缩进会导致代码紊乱。

变量赋值

Python 的另一大特点,在于变量的赋值和创建不需要声明变量类型。

  • Python 语法要求:变量在使用前都必须被赋值,且支持多个变量同行赋值,例如:
a = 1
b, c , str =  2, 3, "string" 
  • 赋值结果:a = 1,b = 2,c = 3,str = "string",其中 a、b 和 c 为整数类型,str 为字符串类型。

输入与输出

name = input("What's your name?")
print ('My name is %s.' %name)

age = 18
print ("I'm %d years old." %age)

运行结果

What's your name?cc
My name is cc.
I'm 18 years old.
  • 输入函数 input,用来将输入的内容赋值给变量 name,其中 " ( ) " 中的内容显示在界面上。

  • 输出函数 print,用来输出 " ( ) " 中的内容。

  • %name 和 %age 用来代表变量的内容,并用 %s 和 %d 字符串加以替代,其中 %s 用作替代字符串类型,%d 用来替代十进制整数。

判断语句

level = 5
p = True

if level > 10 and p:
    print('Success')

if level < 0 or p is not True:
    print('False')
elif level < 5:
    print('Normal')
elif level < 10:
    print('Hard')
elif level is 10:
    print('Extreme')

运行结果

Hard
  • 注意 if...else... 语句与其他编程语言的差异:冒号与缩进的使用,elif 的使用,and 与 or 的特殊用法。

循环语句

sum = 0
num = 1
while num < 10:
    sum += num
    num += 1
print (sum)

运行结果

45
  • 注意 while 语句与其他编程语言的差异:冒号与缩进的使用。
for char in 'Python':     # 遍历字符串 'Python' 中的每个字符
   print ( '字符 :', char )
 
sports = ['football', 'basketball',  'tennis']
for sport in sports:        # 遍历列表中的项
   print ( '运动项目 :', sport )

sports = ['football', 'basketball',  'tennis']
for index in range(len(sports)):        # 遍历列表中的项
   print ( '运动项目 :', sports[index] )

运行结果

字符 : P
字符 : y
字符 : t
字符 : h
字符 : o
字符 : n
运动项目 : football
运动项目 : basketball
运动项目 : tennis
运动项目 : football
运动项目 : basketball
运动项目 : tennis
  • 和其他编程语言相比,Python 的 for 循环语法更为灵活和多样。

列表 [ list ]

lists = [ 'a', 'b' ]
print ( len(lists) )

lists.append( 'd' )
print (lists)

lists.pop()
print (lists)

lists.insert( 1, 't' )
print (lists)

lists.insert( 1, 't' )
print (lists)

lists += [1, 2, 3]
print (lists)

lists *= 2
print (lists)

print (2 in lists)

del lists[2]
print (lists)

del lists

运行结果

2
['a', 'b', 'd']
['a', 'b']
['a', 't', 'b']
['a', 't', 't', 'b']
['a', 't', 't', 'b', 1, 2, 3]
['a', 't', 't', 'b', 1, 2, 3, 'a', 't', 't', 'b', 1, 2, 3]
True
['a', 't', 'b', 1, 2, 3, 'a', 't', 't', 'b', 1, 2, 3]
  • 在 Python 中,列表类似于数组,具有增删改查等基本功能。

元组 ( tuple )

tup1 = ( 1, 2, 3, 4 )
print (tup1[1])

tup2 = tup1 + ( 5, 6, 7 )
print (tup2)

del tup1, tup2

运行结果

2
(1, 2, 3, 4, 5, 6, 7)
  • 元组与列表相似,但元组一旦被确定后,便不能被修改。

字典 { dictionary : value }

dict = {'a': 1, 'b': 2, 'c': 3}
print (dict['a'])

dict['a'] = 4
print (dict)

del dict['a']
print (dict)

del dict

运行结果

1
{'a': 4, 'b': 2, 'c': 3}
{'b': 2, 'c': 3}
  • 字典的每个键值 key 对应一个 value,且存储的 key 均不相同,具备增删改查等功能,可存储任意类型对象。

集合 { set }

a = set('asdfgasdfghj')
print (a)

b = { 'a', 'b', 'c', 'a', 'b', 'c', 'd' }
print (b)

c = set(('asd', 'zxc', 'qwe', 'asd', 'zxc', 'qaz'))
print (c)

print (a - b) # 包含在集合a中且不包含在集合b中的元素
print (a | b) # 在集合a或b中包含的元素
print (a & b) # 在集合a和b中都包含的元素
print (a ^ b) # 不同时包含于集合a和b的元素

b.add ( 'f' )
print (b)

b.update ({1,'123'}, ['qwe','asd'])
print (b)

b.remove(1)
print (b)

b.discard('123')
print (b)

b.pop()
print (b)

print (len(b))
print ('a' in b)

b.clear()
print (b)

运行结果

{'j', 'a', 'g', 'd', 'f', 's', 'h'}
{'b', 'd', 'a', 'c'}
{'qwe', 'asd', 'zxc', 'qaz'}
{'j', 'g', 'f', 's', 'h'}
{'j', 'a', 'g', 'd', 'f', 's', 'b', 'c', 'h'}
{'d', 'a'}
{'j', 'g', 'f', 'b', 's', 'c', 'h'}
{'a', 'd', 'f', 'b', 'c'}
{'qwe', 1, 'a', 'asd', 'd', '123', 'f', 'b', 'c'}
{'qwe', 'a', 'asd', 'd', '123', 'f', 'b', 'c'}
{'qwe', 'a', 'asd', 'd', 'f', 'b', 'c'}
{'a', 'asd', 'd', 'f', 'b', 'c'}
6
True
set()
  • 集合的元素互不相同,且无序排列,具备增删改查等基本功能。
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,839评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,543评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,116评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,371评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,384评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,111评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,416评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,053评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,558评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,007评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,117评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,756评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,324评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,315评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,539评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,578评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,877评论 2 345

推荐阅读更多精彩内容