python基礎point

1.格式化輸出php

方法一:java

print "Username is %s" % namepython

print "The girl's age is %d, address is %s" % (age, address)數組

方法二:app

print "The girl's age is {0}, address is {1}".format(age,address)ide

 

2. 輸入函數

x= raw_input("please enter a number":)ui

x= int(raw_input("please enter a number":))this

 

3. list,tuple,dictidea

list, 列表,長度元素內容均可變,city = ['Beijing','Shanghai','Hangzhou','Chengdu']

增長元素 city.append('Nanjing')

tuple, 元組,不可變,love=('l','o','v','e')

dic,字典,key-value對,antonym = {'big':'small','good':'bad','black':'white','water':'fire'}

key必須是不可變的,不能重複

 

4. 遍歷數組

for i in range(3): # [0,1,2]

for i in range(1,6): #[1,2,3,4,5]

for cityname in city:

    print cityname

對字典的遍歷:

(1) for sidea in antonym:

         print sidea,':',antonym[sidea]

(2) for sidea,sideb in antonym.items():

         print sidea,':',sideb

         print '{0} and {1} is a pair of antonym'.format(sidea,sideb)

 

5. sys.argv

sys.argv是參數列表

若有文件test.py

執行python test.py, 則sys.argv只有一個元素,argv[0]=‘./test.py’

如執行python test.py hello , 則sys.argv有2個元素,argv[1]='hello'

 

6. __name__, __main__

'__'開頭表示權限是private的變量

__name__, __main__是內置的

如在test.py中

def func():

     print "hello"

if __name__ == '__main__':

     func()

 

那麼,在執行test.py,python test.py時,會調用func()

而在其餘模塊中import test這個模塊的時候,不會調用func()

 

7. map, reduce, filter, sorted

這些都是python的built-in函數

map實現對一個list的每一個元素都做用某個函數,map(函數名,listname)

reduce是對每次用函數做用後的結果迭代,reduce(函數名,listname); 如redue(add,listname)的結果就是累積求和

filter是利用函數篩選出一些符合函數返回值True的元素,如filter(is_odd,listname),篩選出list當中的奇數

sorted內置的排序函數,默認升序,可加cmp函數制定本身的排序規則,sorted(listname),sorted(listname,cmp)

如降序:

def cmp(x,y):

    if x<y:

        return 1

    elif x>y:

        return -1

    else:

        return 0

 

8. python 的註釋

單行#

多行 '''

DocStrings的使用:

在函數中,用''' .........'''註釋的部分能夠提取出來

如 def myfunc():

        '''this function is to test DocStrings

          a fashion feature in python'''

調用:print myfunc.__doc__

 

9. python的一些特性:

  • 面向過程、面向對象都支持
  • 很是簡潔:
    • 任何一個代碼段均可以被執行,不像C,java 有main入口
    • 大部分語句不須要用()圍起來,如if i>3: 而不像c,java中的if (i>3)
    • 邏輯分行的方式,:做爲以一層邏輯的開始,不一樣邏輯層之間差4個空格
    • 動態類型語言,變量賦值直接用,沒有類型說明,不像c,java都是強類型的,在這一點上php也是弱類型,不過php的變量名前要加$,而python連這個都省去了
  • 不支持switch case,其實也是其簡潔性的體現,由於switch語句寫起來其實比if elif代碼量還要大,功能又同樣
  • 大小寫敏感

10. 高階函數

就是返回值是函數的函數,即在函數中返回函數

相關文章
相關標籤/搜索