python基礎知識——基本語法
在python基礎知識這個系列中,準備羅列出我學習python的一些基礎知識,包括:
- 基本語法
- 控制語句
- 內建資料結構
- 模組和函式
- 字串
- 檔案處理
- 面向物件
- 異常處理
以前寫機器學習演算法喜歡使用Matlab語言,接觸python後,覺得python有很多地方還是比Matlab方便點,各有各的優勢吧,在公司還是使用python較多,這裡會羅列出一些python的基礎知識。
一、編碼規則
1、命名規則
變數名通常是由字母和下劃線組成,包名,模組名通常是由小寫字母組成。
類名的首字母用大寫,其他字母用小寫;物件名用小寫字母;類的私有變數、私有方法以兩個下劃線作為字首。
class Person:#定義一個Person類 __name = ''#定義一個私有變數 __age = ''#定義一個私有變數 def __init__ (self, name, age): self.__name = name self.__age = age def getName (self): return self.__name def getAge (self): return self.__age
函式名通常採用小寫字母。
2、程式碼縮排和冒號
在python中,程式碼縮排和冒號都是一種語法,在Java,C/C++中有{}語法,在python中則是採用的縮排和冒號。
如在Java中實現如下的判斷:
if (x < 10)
{
y = x + 1;
}else{
y = x * 2;
}
則在python中的寫法為:
if x < 10:#冒號
y = x + 1#縮排
else:
y = y * 2
3、模組的匯入
模組是指類或者函式的集合。與Java中的import類似,在python中有兩種匯入方式:
- import ...
- from ... import ...
如要需要使用random模組中的rangrange函式。則有以下兩種方式:
from ...
import random
num = random.randrange(1,9)#使用randrange函式
print num
from ... import ...
from random import randrange
num = randrange(1,9)#使用randrange函式
print num
注:這兩種方式的區別,from ...匯入的是整個模組,而import ...import ...匯入的只是部分內容,而且還建立了匯入物件的引用,可以直接使用。在import ...模式中為模組建立別名,則使用as,如
import random as rd#為random建立別名rd
num = rd.randrange(1,9)#使用randrange函式
print num
4、註釋
在python中註釋使用的是#,#號後面為註釋的內容,如上面的例子。
這裡還要注意一下其他幾種特殊的註釋
- 中文註釋:#coding:UTF-8
- 跨平臺註釋:#! /usr/bin/python
5、語句分隔
python中不必使用;分隔,但是一行寫多條語句時要使用;分隔。
如
x = 1; y = 2; print x + y
6、變數和常量
變數名由字母、數字或者下劃線組成,其中,首字元必須是字母或者下劃線。
注意全域性變數的定義和使用:
# 在檔案的開始處定義全域性變數
_a = 1#全域性變數,加下劃線以示區別
_b = 2
def add():
global _a
_a = 3
return _a + _b
要使用global關鍵字。
在python中沒有直接定義常量的關鍵字。
7、資料型別
主要的資料型別有:數字、字串、元祖、列表和字典。
數字直接定義
i = 1
檢視i的地址:
i = 1
print id(i)#檢視i的地址
檢視變數的型別
i = 1
j = 1.
print type(i)
print type(j)
<type 'int'> <type 'float'>
8、運算子
算術運算子 |
算術表示式 |
說 明 |
---|---|---|
+ |
x + y |
加法 |
- |
x - y |
減法 |
* |
x * y |
乘法 |
/ |
x / y |
除法 |
% |
x % y |
求模 |
** |
x ** y |
求冪 |
注:1/2要進行浮點運算,需要匯入division模組
from __future__ import division
關係運算符
關係運算符 |
關係表示式 |
說 明 |
---|---|---|
< |
x < y |
小於 |
> |
x > y |
大於 |
<= |
x <= y |
小於等於 |
>= |
x >= y |
大於等於 |
== |
x == y |
等於 |
!=或<> |
x != y或x<>y |
不等於 |
邏輯運算子