1. 程式人生 > >Python基本語法1(基礎知識)

Python基本語法1(基礎知識)

1、將Python當成計算器

      直接在裡面使用+,-,*,/即可,取整數//,求餘%

2、賦值 

      width=20

      i=j=k=0

     a,b=0,1

     賦值後計算:width+i

3、字串

       單引號和雙引號混合使用' "yes,", she said.'這樣可以直接轉移裡面的雙引號進行顯示,外面使用雙引號,裡面使用單引號也可以。

也可以使用\進行轉義。可以使用+進行連線字串。也可以類似於陣列進行取值。使用“”“三個雙引號表示裡面所有的值都是直接顯示出來了的。不管是斜槓還是引號

word="help"

word[0]的值為'h'

word[0:2]的值為'he'。同時也支援負數操作和邊界判斷

word[0:100]值仍然為hello,不會越界

word[-1]即p

word[-0]即word[0]

字串取值是隻讀的,如word[0]='w'是不能執行的

如果要改變值,只能進行賦值一份拷貝出來再進行操作

len(word)取值長度,此處大小為4

字串格式化%前面為格式,後面為內容

str1="abcd %s,%d" % ("efg", 5)

4、列表

類似於list,字串中已經使用了部分,裡面可以容納任意值,可以通過list("abc")進行賦值

可以通過append,del等對裡面資料進行操作

array=[1,2,"a",4,5]

取某一個值array[1]為2

取一段值array[1:3]為[2,"a"],也可以array[1:]為[2,"a",4,5],array[:2]為[1,2]

修改元素的值

array[1] = 5

array[0:2]=[1,2]

刪除

array[0:2]=[]

刪除所有

array[:]=[]

同樣可以使用len:len(array)

允許巢狀

array2=[1,2,array,4,5]

array2[2][2]就是'a'了

array[2].append('b')在array最後面追加資訊

4.2、元組

不可變序列,不能修改,新增,刪除元素

array3=(1,2,3),也可以由tuple("abc")建立

一個值得元組

array3=(1,)

4.3、型別轉換

int("e", 16),e是16進位制,轉換成int型別

int("11",2),“11”是2進位制,轉換成int型別

str(123),123轉換成字串

5、語句

python沒有大括號,對齊的語句就是值並列的,縮排的語句就是表示是它的子語句,while等語句後面都需要加:

5.1 while語句

a,b=0,1

while b < 10:

    print(b) // 屬於while的子語句,縮排

    a,b=b,a+b // 屬於while的子語句,縮排

5.2 if語句

x=int(input("input x: "))

if x<0:

    x=0 // 縮排

    print("error") // 縮排

elif x==0: // 與if並列

    print("zero")

elif x==1:

    print("one")

else:

    print("more")

5.3 for語句

for x in array:

    print("x is ", x)

5.4 range函式

range(5,10)即表示5~9的資料

rang(0,10,3)即表示0,3,6,9

range(6)即表示0,1,2,3,4,5

for i in range(len(array):

print(i, array[i]) #遍歷

5.5 break和continue語句

5.6 pass語句

表示什麼也不做,後面是沒有冒號的,continue和break也沒有冒號的

6 函式

6.1、函式呼叫

def fib(n): #記得冒號

a,b=0,1 #記得縮排

while a < n:

print(a, end=' ')

a,b=b,a+b

print()

呼叫函式

fib(1000)

也可以增加返回值

def fib(n): #記得冒號

a,b=0,1 #記得縮排

result[]

while a < n:

reult.append(a)

a,b=b,a+b

return result

列印輸出值

fib100 = fib(100)

fib100即可

或則print(fib(100))也可以

不帶有return的返回值是None

6.2、函式引數

預設引數

def parrot(a1,a2='a2',a3='a3')

呼叫方法

parrot(10)

parrot(a1=10)

parrot(a2='aaa2',a1=200)

parrot(10,'aaa20','aaaa30')

設定一個必選引數,可選引數可以順序排列,也可以通過引數名稱進行指定

但是型別必須要匹配的,a2的值不能用int賦值

6.3複雜引數

*name 表示一元引數,可以接受變長的字元

**name表示二元引數

def concat(*arguments, sep='/')

for arg in arguments:

print(arg)

return sep.join(arguments)

呼叫concat("a1","a2","a3", sep='.')

輸出結果

a1

a2

a3

a1.a2.a3

*name和**name的拆分形式

list(range(3,6))結果為3,4,5

args=[3,6]

我們可以使用list(range(*rags))即可

6.4 Lambda形參

通過Lambda建立短小的匿名函式

def make_in(n):

return lamdba x: x+n

使用

f=make_in(10)

f(100)表示100+10,n初始化為10,x初始化為100,然後加上n賦值給x

7、其它關鍵字及函式

input:接收輸入,輸入型別為數字,就賦值為數字了

raw_input:接收輸入,輸入型別轉換為string

len,min,max,cmp等基本函式

None

in

list

tuple