老王Python-进阶篇4-函数第三节

1 定义一个方法get_num(num),num参数是列表类型,判断列表里面的元素为数字类型。其他类型则报错,并且返回一个偶数列表:(注:列表里面的元素为偶数)。

def get_num(list1):
    list2=[]
    for i in list1:
        if not isinstance(i,int):
            return 'only numbers'
        elif i%2==0:
            list2.append(i)
    return list2

if __name__=='__main__':
    print get_num([1,3,'5',5,6])
    assert get_num([1,3,'5',5,6])=='only numbers'

 

2 定义一个方法get_page(url),url参数是需要获取网页内容的网址,返回网页的内容。提示(可以了解python的urllib模块)

def getPage(url1):
    import urllib
    f=urllib.urlopen(url1)
    s=f.read()
    f.close()
    return s

if __name__=='__main__':
    print getPage(r'https://hao.360.cn/?a1004')


3 定义一个方法 func,该func引入任意多的列表参数,返回所有列表中最大的那个元素。

def get_num(list1):
    l=[]
    for i in list1:
        if not isinstance(i,list):
            return 'not all list'
        else:
            for j in i:
                l.append(j)
    max1=max(l)
    return max1

if __name__=='__main__':
    lists=[[1,2,8],[2,3,6],[5],[6,1]]
    print get_num(lists)
    assert get_num(lists)==8

 

4 定义一个方法get_dir(f),f参数为任意一个磁盘路径,该函数返回路径下的所有文件夹组成的列表,如果没有文件夹则返回"Not dir"。

import os
import glob
def get_dir(dir_locad):
    dir_list= []
    file_list = glob.glob(dir_locad+"\*")
    for i in file_list:
        if os.path.isdir(i):
            dir_list.append(i.split("\\")[-1])
    if len(dir_list) == 0:
        return 'Not dir.'
    else:
    return dir_list

print get_dir('c:/1/')
assert get_dir('c:/1/')==['2']

posted @ 2017-12-24 19:46  秋刀鱼Q  阅读(324)  评论(0编辑  收藏  举报