標籤:
所有測試語句基於Python 2.7.1
自學Python,如果哪裡說的不恰當,還請指正。謝謝。
樣本絕大部分來自部落格園vamei的python教程
1.函數參數 關鍵字傳遞
#! /usr/bin/env python# coding=UTF-8# 函數參數關鍵字傳遞 根據每個參數的名字傳遞參數-->無需遵照位置對應關係# 可以與位置傳遞混用,但是直接的值傳遞的參數要出現在關鍵字參數之前def sum(a, b, c): return a + b + cprint "sum(1,b=2,c=3) = ", sum(1, b=2, c=3)print "sum(c=3,b=4,a=5) = ", sum(c=3, b=4, a=5)
2.函數參數預設值
# 賦予參數預設值 如果調用函數時沒有傳遞對應位置上的值,將使用預設值def squre_sum(a, b, c=1): return a ** a + b ** b + c ** cprint "squre_sum(2,3)=", squre_sum(2, 3)print "squre_sum(2,3,4)=", squre_sum(2, 3, 4)
3.函數參數 包裹傳遞
# 函數參數包裹傳遞 不確定調用時會傳遞幾個參數# 包裹位置傳遞def func(*name): print type(name) print nameprint func(1, 2, 3)print func(1, 2, 3, 4, 5)
這裡為什麼每次都輸出有None,還請知道的園友告知一下,謝謝。
# 包裹關鍵字傳遞 dic是一個字典 收集所有的關鍵字傳遞給函數func_tdef func_t(**dic): print type(dic) print dicprint func_t(a=1, b=2)print func_t(a=3, b=4, c=5)
4.解包裹
# 解包裹 *和** 也可以在調用的時候使用 ,即解包裹 unpackingdef func_m(a, b, c): print a, b, cargs = (1, 2, 3)# 在傳遞tuple時,讓tuple的每一個元素對應一個位置參數,*提示Python去拆分func_m(*args)# 詞典解包裹dic = {‘a‘: 11, ‘b‘: 22, ‘c‘: 33}func_m(**dic) # 得到value值func_m(*dic) # 得到key值
5.迴圈設計
string = ‘xiaomi vs meizu‘for index in range(0, len(string), 1): print string[index],
分別定義上限start,下限stop和每次迴圈的步長step
在python 2.x中,要使 print 不換行 在print語句最後加逗號(英文半形符號形式)
>>> print x,
在python 3.x中,要使 print 不換行,寫成如下格式
>>> print(x, end="")
因為print函數的原型是
print(*objects, sep=‘ ‘, end=‘\n‘, file=sys.stdout, flush=False)
預設是以 \n 結尾,即換行。把 \n 替換為空白字串就行。
string = ‘xiaomi vs meizu‘print ‘\n‘, ‘字串長度:‘, len(string)for (index, char) in enumerate(string): print index, print char,
利用enumerate()函數,可以在每次迴圈中同時得到下標和元素,enumerate()在每次迴圈中,
返回的是一個包含兩個元素的定值表(tuple),兩個元素分別賦予index和char。
a = [1, 2, 3]b = [4, 5, 6]c = [7, 8, 9]for (x, y, z) in zip(a, b, c): print (x, y, z)
如果你多個等長的序列,然後想要每次迴圈時從各個序列分別取出一個元素,可以利用zip()函數
zip()函數的功能,就是從多個列表中,依次各取出一個元素。每次取出的(來自不同列表的)元素合成一個元組,
合并成的元組放入zip()返回的列表中。zip()函數起到了彙總列表的功能。
a = [1, 2, 3]b = [4, 5, 6]# cluster 彙總zipped = zip(a, b)print ‘彙總列表:‘, zipped# decompose 分解ma, mb = zip(*zipped)print ‘分解列表:‘, ma, mb
首次安裝PyCharm IDE會發現,在調試的輸出視窗中文顯示為亂碼;
這是因為工程預設的編碼是GBk,而IDE的預設編碼是UTF-8,
開啟File --> settings--> Editor -->File Encodings 選項卡
將他們的編碼統一一下,設定為支援中文的編碼即可,如UTF-8。
Python初體驗之基礎文法(三)