Python初體驗之基礎文法(三)

來源:互聯網
上載者:User

標籤:

所有測試語句基於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初體驗之基礎文法(三)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.