#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 urllib
def 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 glob
import os
def 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]
Python自学 第二次作业
最新推荐文章于 2021-03-26 03:04:32 发布