學(xué)一門語言,基礎(chǔ)語法一定要扎實。很多入門的編程書籍,都會花大量的篇幅來介紹基礎(chǔ)語法,對于毫無編程經(jīng)驗的新手而言,這樣的書籍無疑是很友好的,但是對于有編程經(jīng)驗的開發(fā)者而言,很多的基礎(chǔ)語法是通用的, 只需花費較少的時間瀏覽下基礎(chǔ)語法,將精力集中在語言獨有的特征上即可。
在這里推薦幾本基礎(chǔ)的,適合新手查看的入門書籍
python簡明教程
https://bop.mol.uno/
think python
https://cycleuser.gitbooks.io/think-python/content/
廖雪峰的python教程
https://www.liaoxuefeng.com/wiki/1016959663602400
下面是我自己總結(jié)的一些基礎(chǔ)語法
變量名稱由數(shù)字,字母,下劃線構(gòu)成,且不能以數(shù)字開頭
變量名稱區(qū)分大小寫
變量名稱不能是語言本身的關(guān)鍵詞,比如def等
單行注釋以井號#
開頭,多行注釋以三個單引號'''
或者雙引號"""
開頭,用法如下
# 這里是單行注釋,獨占一行
print('hello wordld')
print('hello world') # 這里是單行注釋,放在語句的后面
'''
這里是多行注釋
允許多行文本
'''
print('hello wordld')
"""
這里是多行注釋
允許多行文本
"""
print('hello wordld')
在python中,單引號與雙引號的功能是相同的,為了更加省時省力,一般用單引號,單引號鍵盤輸入更加方便。
變量的基本作用就是存儲數(shù)據(jù),用法如下
num = 3
num
就是變量,=
表示賦值,3就是這個變量存儲的值。存儲的值擁有不同的類型,常見的類型包括以下幾種
int
float
string
bool
前兩種表示數(shù)字,其中int
表示整數(shù),float
表示浮點數(shù),也就是小數(shù); string
表示字符串,字符串以單引號或者雙引號括起來,bool
型只有兩種取值,True
和False
,注意布爾型值的兩側(cè)沒有引號。
不同類型的數(shù)據(jù)之間可以轉(zhuǎn)換,用法如下
# 數(shù)字轉(zhuǎn)字符串
str(3)
str(3.1)
# 字符串轉(zhuǎn)數(shù)字
int('3')
float('3.1')
# 整形轉(zhuǎn)浮點型
float(3)
在python中,有一種特殊的數(shù)據(jù)類型None
,表示空值,沒有值,類似R語言中的NULL。
針對數(shù)字的數(shù)學(xué)運算,常見的有以下幾種
加 +
減 -
乘 *
乘方 **
除 /
整除 //
取余 %
用法如下
print(3 + 2) # 5
print(3 - 2) # 1
print(3 * 2) # 6
print(3 ** 2) # 9
print(3 / 2) # 1.5
print(10 // 3) # 3
print(3 % 2) # 1
針對字符串的運算,包括以下幾種
字符串連接 +
字符串重復(fù) *
用法如下
print('abc' + 'def') # abcdef
print('abc' * 3) # abcabcabc
當(dāng)我們對變量的值進(jìn)行運算,然后重新賦值,類似下面這個語句
num = 3
num = num + 2
此時,可以將賦值符號與運算符相結(jié)合,進(jìn)行簡寫, 用法如下
num += 2 # num = num + 2
num -= 2 # num = num - 2
num *= 2 # num = num * 2
num /= 2 # num = num / 2
num **= 2 # num = num ** 2
num //= 2 # num = num // 2
num %= 2 # num = num % 2
需要注意的是,在其他語言中會有x++
, x—`的語句,表示在原來值的基礎(chǔ)上加1,在python中不存在這樣的用法。
同時針對數(shù)字和字符串的比較運算符,包括以下幾種
大于 >
小于 <
大于等于 >=
小于等于 <=
不等于 !=
相等 ==
針對布爾值的邏輯運算符,常用于條件判斷語句中,包括以下幾種
and
or
not
用法如下
3 > 2 and 5 > 3
3 < 2 or 5 > 3
not 3 < 2
控制結(jié)構(gòu)包括條件判斷和循環(huán)兩種,在python中,摒棄了傳統(tǒng)的用大括號包圍代碼塊的特點,改用縮進(jìn)來表示,條件判斷對應(yīng)if語句,寫法如下
# 單個if
if x > 3:
print(1)
# if .. else
if x > 3:
print(1)
else:
print(2)
# if ..elif ..else
if x > 3:
print 1
elif x > 2:
print 2
elif x > 3:
print 3
else:
print 4
循環(huán)有for
循環(huán)和while
循環(huán)兩種,for
循環(huán)通過成員運算符in
來實現(xiàn),用法如下
letters = ['a', 'b', 'c']
for i in letters:
print(i)
for
循環(huán)用于針對每個元素進(jìn)行相同操作的場景,while
循環(huán)用于給定條件下的操作,用法如下
while x <= 10:
x +=1
在python中,針對for
和while
循環(huán),還加入了else
語句,用于循環(huán)結(jié)束后的在執(zhí)行一條語句,用法如下
for i in letters:
print(i)
else:
print('hello')
簡單的循環(huán)幾乎用不到else
分支,但是其實else
分支尤其特定的使用場景,后續(xù)在深入討論。
循環(huán)還需要控制控制語句,有以下兩種
1.跳出循環(huán), break
2.跳過循環(huán), continue
數(shù)據(jù)結(jié)構(gòu)將基本的數(shù)據(jù)類型組合起來,方便訪問和操作,python常見的數(shù)據(jù)有以下幾種
列表, list
元組, tuple
集合,set
字典, dict
寫法如下
letters = ['a', 'b', 'c'] # 方括號表示列表
letters = ('a', 'b', 'c') # 圓括號表示元組
letters = set((['a', 'b', 'c')) # 集合
letters = {'1' : 'a', '2' : 'b', '3' : 'c' } # 大括號表示字典
數(shù)據(jù)結(jié)構(gòu)的相關(guān)操作是重中之重,后續(xù)再深入討論。
函數(shù)通過def
關(guān)鍵詞來定義,函數(shù)具有函數(shù)名稱,參數(shù)列表,返回值等特征,最基本的用法如下
# 定義
def add(a, b):
return(a, b)
# 調(diào)用
total = add(2, 3)
關(guān)于函數(shù),在python中其實有很多的用法細(xì)節(jié),后續(xù)在深入討論。
模塊是別人已經(jīng)開發(fā)測試好的,具備完整功能的代碼,通過模塊可以大大擴(kuò)展語言的功能。模塊的用法在編程語言中廣泛存在。要使用模塊,必須先導(dǎo)入模塊,導(dǎo)入模塊的幾種常見語法如下
# 一次性導(dǎo)入模塊中的所有方法,簡單粗暴
import os
# 和上述用法一樣,模塊名太長,設(shè)置了別名
import numpy as np
# 只導(dǎo)入模塊中的某一個函數(shù),按需導(dǎo)入
from os import system
導(dǎo)入模塊之后,就可以使用模塊中的方法了。python中的模塊分為兩種,第一種是內(nèi)置模塊,也稱為標(biāo)準(zhǔn)庫,python安裝好之后就可以使用了,第二種是第三方模塊,需要單獨安裝之后才可使用,最常用的安裝方式是pip安裝,基本用法如下
pip install numpy
python原生支持面向?qū)ο蟮拈_發(fā)功能, 這也是區(qū)別于perl等腳本語言的一大特點。對于簡單的腳本編程,其實用到面向?qū)ο蟮臋C(jī)會不多,在初學(xué)的時候,可以不用花費很多精力在這塊。只需記住一點,類的函數(shù)稱之為方法,其調(diào)用方式和普通函數(shù)有區(qū)別
# python
line.split("\t")
# perl
split /\t/, $line
傳統(tǒng)的函數(shù)調(diào)用先寫函數(shù)名稱,后面是參數(shù),而類的方法在實例化對象的基礎(chǔ)上,用點號連接方法名稱。Python內(nèi)置的很多變量類型也是類的實例,所以其操作都是基于類的方法來操作的。
·end·
聯(lián)系客服