函式的定義
def 函式名():
函式體return 返回值1 返回值2
函式的呼叫
有引數的函式
#形式引數
defadd
(x,y):
print x + y
#實參,x=1, y =2
add(1,2)
#3
def
mypow
(x,y=2):
print x**y ##x的y次方
mypow(2)
#4
#形式引數
#args可以改為其他變數名
defadd
(*args):
#args實質上是乙個元組
#print args
sum = 0
for i in args:
sum += i
print sum
add(1,2)
#3add(1,2,3)
#6add(1,2,3,4)
#10
#kwargs可以改為其他變數名
defusers
(name,age, **kwargs):
#kwargs實質上是乙個字典
print name, age ,kwargs
users("users1"
12 city="xi'an" birth="20180110")
#user1 12
如果必選引數,>預設引數,>可變引數, >關鍵字引數
返回值def
add(x,y):
return x+y
#return none
print add(1,2)
#3
返回多個值def
fun(*args):
""" 返回最大值和最小值
:param args:傳入多個數值
:return:最大值,最小值
"""#實質上python只能返回乙個值
#間接通過元組返回多個值
return max(args), min(args)
print fun(91,2,3,13,12,18)
#(91, 2)
函式的作用域#全域性變數
num 1
deffun
():#global宣告num為全域性變數
global num
#區域性變數
num = 5
fun()
print num
#5
切片
迭代
from collections import iterable
#判斷字串
isinstance("hello",iterable)
#true
#判斷列表
isinstance([1,2,3,4],iterable)
#true
#判斷元組
isinstance((1,2,3,4),iterable)
#true
#判斷字典
isinstance(,iterable)
#true
#判斷集合
isinstance(,iterable)
#true
方法一li =
for i in range(2,20,2):
print li
#[4, 16, 36, 64, 100, 144, 196, 256, 324]
方法二print [i**2
for i in range(2,20,2)]
#[4, 16, 36, 64, 100, 144, 196, 256, 324]
print [i**2
for i in range(2,20) if i%2 == 0]
#[4, 16, 36, 64, 100, 144, 196, 256, 324]
print [i+j for i in
'abc'
for j in
'123']
#['a1', 'a2', 'a3', 'b1', 'b2', 'b3', 'c1', 'c2', 'c3']
s.endswith(「.conf」)
#匯入os
import os
#找出/etc下檔案中以.conf結尾的檔案
print [i for i in
os.listdir("/etc") if i.endswith(".conf")]
#['nsswitch.conf', 'nfsmount.conf', 'man_db.conf', 'libaudit.conf', 'dnsmasq.conf', 'request-key.conf', 'krb5.conf', 'dracut.conf', 'libuser.conf', 'rsyslog.conf', 'logrotate.conf', 'e2fsck.conf', 'yum.conf', 'mke2fs.conf', 'idmapd.conf', 'ovirt-guest-agent.conf', 'rsyncd.conf', 'chrony.conf', 'trolltech.conf', 'sudo-ldap.conf', 'sudo.conf', 'vconsole.conf', 'locale.conf', 'resolv.conf', 'grub.conf', 'asound.conf', 'fuse.conf', 'colord.conf', 'hba.conf', 'sos.conf', 'oddjobd.conf', 'lftp.conf', 'usb_modeswitch.conf', 'ipsec.conf', 'ksmtuned.conf', 'mtools.conf', 'ra***.conf', 'numad.conf', 'brltty.conf', 'fprintd.conf', 'wvdial.conf', 'pbm2ppa.conf', 'pnm2ppa.conf', 'updatedb.conf', 'named.conf']
#找出/etc下檔案中以.conf結尾的檔案,並且只輸出前5個
print [i for i in
os.listdir("/etc") if i.endswith(".conf")][:5]
#['host.conf', 'kdump.conf', 'sysctl.conf', 'ld.so.conf', 'sestatus.conf']
Python中property函式用法例項分析
通常我們在訪問和賦值屬性的時候,都是在直接和類 例項的 的 lexcx dict 打交道,或者跟資料描述符等在打交道。但是假如我們要規範這些訪問和設值方式的話,一種方法是引入複雜的資料描述符機制,另一種恐怕就是輕量級的資料描述www.cppcns.com符協議函式property 它的標準定義是 p...
AfxBeginThread 函式的用法例項講解
afxbeginthread 使用者介面執行緒和工作者執行緒都是由afxbeginthread建立的。現在,考察該函式 mfc提供了兩個過載版的afxbeginthread,乙個用於使用者介面執行緒,另乙個用於工作者執行緒,分別有如下的原型和過程 使用者介面執行緒的afxbeginthread 工作...
Python之eval函式的用法
a 1,2,3 type a class str type eval a 將字串轉換為列表 class list b 1000 type b class str type eval b 將字串轉換為整形 class int c type c class str type eval c 將字串轉換為字...