国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python中非常實用的一些功能和函數分享

2020-02-23 06:25:44
字體:
來源:轉載
供稿:網友

在使用Python多年以后,我偶然發現了一些我們過去不知道的功能和特性。一些可以說是非常有用,但卻沒有充分利用。考慮到這一點,我編輯了一些你應該了解的Python功能特色。

帶任意數量參數的函數
你可能已經知道了Python允許你定義可選參數。但還有一個方法,可以定義函數任意數量的參數。
首先,看下面是一個只定義可選參數的例子
代碼如下:
def function(arg1="",arg2=""):
    print "arg1: {0}".format(arg1)
    print "arg2: {0}".format(arg2)

function("Hello", "World")
# prints args1: Hello
# prints args2: World

function()
# prints args1:
# prints args2:

現在,讓我們看看怎么定義一個可以接受任意參數的函數。我們利用元組來實現
代碼如下:
def foo(*args): # just use "*" to collect all remaining arguments into a tuple
    numargs = len(args)
    print "Number of arguments: {0}".format(numargs)
    for i, x in enumerate(args):
        print "Argument {0} is: {1}".format(i,x)

foo()
# Number of arguments: 0

foo("hello")
# Number of arguments: 1
# Argument 0 is: hello

foo("hello","World","Again")
# Number of arguments: 3
# Argument 0 is: hello
# Argument 1 is: World
# Argument 2 is: Again

使用Glob()查找文件
大多Python函數有著長且具有描述性的名字。但是命名為glob()的函數你可能不知道它是干什么的除非你從別處已經熟悉它了。
它像是一個更強大版本的listdir()函數。它可以讓你通過使用模式匹配來搜索文件。
代碼如下:
import glob

# get all py files
files = glob.glob('*.py')
print files

# Output
# ['arg.py', 'g.py', 'shut.py', 'test.py']

你可以像下面這樣查找多個文件類型:
代碼如下:
import itertools as it, glob

def multiple_file_types(*patterns):
    return it.chain.from_iterable(glob.glob(pattern) for pattern in patterns)

for filename in multiple_file_types("*.txt", "*.py"): # add as many filetype arguements
    print filename

# output
#=========#
# test.txt
# arg.py
# g.py
# shut.py
# test.py

如果你想得到每個文件的絕對路徑,你可以在返回值上調用realpath()函數:

代碼如下:
import itertools as it, glob, os

def multiple_file_types(*patterns):
    return it.chain.from_iterable(glob.glob(pattern) for pattern in patterns)

for filename in multiple_file_types("*.txt", "*.py"): # add as many filetype arguements
    realpath = os.path.realpath(filename)
    print realpath

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 五寨县| 德安县| 布拖县| 漾濞| 汉阴县| 县级市| 西贡区| 朝阳区| 望江县| 五常市| 平阴县| 柳江县| 桂阳县| 安达市| 边坝县| 江安县| 久治县| 潢川县| 万宁市| 泸溪县| 新安县| 绥德县| 永福县| 栾城县| 鸡泽县| 文水县| 东明县| 荣昌县| 来宾市| 万年县| 云梦县| 公安县| 修武县| 赫章县| 武威市| 长治市| 建昌县| 岗巴县| 黎川县| 自贡市| 怀来县|