Python學習之函式的用法例項

2021-08-14 12:19:50 字數 3372 閱讀 2134

函式的定義

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 將字串轉換為字...