Python自学 第二次作业

来源:互联网 发布:ubuntu 交叉编译 编辑:程序博客网 时间:2024/05/25 08:13
#coding=utf-8'''习题:1 定义一个方法get_num(num),num参数是列表类型,判断列表里面的元素为数字类型。其他类型则报错,并且返回一个偶数列表:(注:列表里面的元素为偶数)。2 定义一个方法get_page(url),url参数是需要获取网页内容的网址,返回网页的内容。提示(可以了解python的urllib模块)。3 定义一个方法 func,该func引入任意多的列表参数,返回所有列表中最大的那个元素。4 定义一个方法get_dir(f),f参数为任意一个磁盘路径,该函数返回路径下的所有文件夹组成的列表,如果没有文件夹则返回"Not dir"。注明:吸取上次作业遇到的问题,要求写的函数逻辑清楚,并且考虑一些特殊的情况处理,能做断言的尽量用断言。'''#定义一个方法get_num(num),num参数是列表类型,判断列表里面的元素为数字类型。其他类型则报错,并且返回一个偶数列表def get_num(num):    '''    定义一个方法get_num(num),num参数是列表类型,判断列表里面的元素为数字类型。其他类型则报错,并且返回一个偶数列表    @:param numlist    @:return  list    '''    returnlist = []    if type(num) != list:        print 'error,type of numlist is not a list'        return None    else:        for i in num:            if isinstance(i,int):                if i % 2 == 0:                    returnlist.append(i)            else:                print 'wrong type'    return returnlist#加上一个断言表示,判定,也是测试assert get_num([1,2,3,4,5,6])==[2,4,6]print get_num([1,2,3,4,5,6])import urllibdef get_page(url):    try:        response = urllib.urlopen(url)        html = response.read()        print(html)    except Exception as e:        return 'Url Error'#get_page('http://www.csdn.net')def get_bignum(*num_list):    for i in num_list:        i = sorted(i)        max = []        max.append(i[-1])    for j in max:        max=sorted(max)        return max[-1]assert get_bignum((1,3,4),(2,4,1),(3,4,6)) == 6#获得指定目录下由文件夹构成的列表,中文名好似不支持啊import globimport osdef get_dir(f):    '''    :param f:the path of file    :return: the list    '''    if os.path.exists(f) == True:        print 'exist file path'    else:        print 'not exist'    if os.path.exists(f):        dir_list = []        file_list = glob.glob(f + "\*")        for i in file_list:            if os.path.isdir(i):                dir_list.append(i.split("\\")[-1])        if len(dir_list) == 0:            return        else:              return dir_list    else:        print 'path is not exist'print get_dir("F:\\")#def func2(*kargs,**kwargs):#   return kargs#print func2(1,2,3,4,2,3,3,32,[1,2,3,4])a = [1,2,3,45,54]
0 0
原创粉丝点击