天天看點

Python學習(一)基本文法

Python學習(一)基本文法

(一)Python的縮進和換行

之前一直都是用C開發,閑暇之餘,想學下python,一開始感覺很不習慣,跟C的語言風格還是有相當大的差別。

Python沒有花括号{},使用縮進來作為程式層次區分的标志,此外Python沒有分号;,以換行來實作程式語句的結束。據說這樣的設計是為了強制形成開發者開發的時候注意縮進和單個程式語句獨立成行的習慣,便于程式閱讀。

如下,if語句的使用,while語句并沒有使用花括号,而是利用縮進,print語句和while語句的縮進是一樣的,是以print語句已經不屬于while循環的内容了。

事實上,我不是很習慣這種方式,而且也擔心多重循環或者判斷會不會使代碼難以閱讀,網上的建議是程式本身來講,就不應該存在太多重的循環和判斷,應該避免這種情況出現,考慮去簡化邏輯,拆分或者優化你的程式。

sum = 
n = 
while (n <=  and n > ):#python 沒有&& 和||,等價的是 and 和 or
    sum = sum + n
    n = n - 
print sum
           

(二)Python的變量

1.變量的定義

Python的變量定義的時候,無需顯式的表明該變量是何種類型,根據你指派的内容來決定。

C變量的定義和指派

int a = ;
float b = ;
           

Python則是直接寫出變量名稱,

a = 
b = 
           

2.變量長度

Python中list、dict的總長度都是無需在定義的時候就聲明清楚,你可以任意的增删。差別于C語言定義數組的時候,必須規定數組長度(C++裡可以用new的方式,C則要調用malloc函數來解決動态記憶體配置設定的問題)。

#list add and delelte
fruit = ['apple','pear','banana']
print fruit

fruit.append('strawberry')
print 'add %s' %fruit[-] #通過下标來查找
print fruit

fruit.insert(,'tomato')
print 'add %s' %fruit[]
print fruit

print 'delete %s'%fruit[]
fruit.pop()
print fruit

#也可以先定義一個空的list,後面根據給list指派
fruit = []
           

3.Python的list/tuple和dict

list:我的了解是,它就是一個動态配置設定的數組一樣,你可以通過序号來查找。list的标志是使用[]。如fruit = [‘apple’,’pear’,’banana’]

tuple:跟list很像,但是其元素是不可修改的。tuple的标志是使用()。classmates = (‘mike’,’Bob’,’Tracy’) #元組元素不能變

dict:它每一個元素包含key、value兩個部分,通過key來查找value。

d = {‘mike’:30,’sky’:70,’Abner’:80}

dict和list的差別:list占用的記憶體小,隻有值占用了記憶體,而dict則需要同時存入鍵值(key)和值(value);但是dict的優勢在于查找的速度快,可以利用key快速的定位到值,而list則要通過下标,相對來說較慢。

(三).基本語句 if、for、while

1.if :跟普通的if語句沒什麼差別,如下:

age = 
if (age > ) :
    print 'your age is %d' %age
    print 'adult'
else :
    print 'your age is %d' %age
    print 'teenager'
           

2.while:跟普通的while語句沒什麼差別

例子,見(一)

3.for:python的for,個人了解是專門設計成為疊代、周遊服務的,如下:

#dict的疊代
d = {'a':,'b':,'c':}
for key in d:
    print key
for value in d.itervalues():
    print value
for key,value in d.iteritems():
    print key,value