20161005 Python 习题一

1.定义一个方法 func,该func可以引入任意多的整型参数,结果返回其中最大与最小的值。

def func1(*num):
    Max = None
    Min = None
    for x in num:
        #保证传入的是int类型
        if isinstance(x,int):
            #如果是第一次循环
            if Max == None:
                #初始化Max和Min
                Max = x
                Min = x
            #不是第一次循环
            else:
                Max = max(Max,x)
                Mix = min(Min,x)
    #如果没有一个参数传入或者所有参数都不为整型,则返回值为[None,None]
    return [Max,Min]
print(func1(2,1,3,4,5,9))

2.定义一个方法func,该func可以引入任意多的字符串参数,结果返回(长度)最长的字符串。

def func2(*string):
    #Ans第一个为字符串,第二个位长度
    #因为len('')=0,所以这里默认值位-1
    Ans = None
    Len = -1

    for x in string:
        if isinstance(x,str):
            #满足条件的第一次循环;或者非第一次循环,但这个字符串更长
            if (Ans == None) or (len(x) > Len):
                Ans = x
                Len = len(x)
    #如果没有正确答案,则返回None
    return Ans
print(func2("asas","asasa","sasasas","sasa","sasasasasasa"))

3.定义一个方法get_text(f),f参数为任意一个文件的磁盘路径,该函数返回f文件的内容。

import os
def get_txt(f):
    if os.path.exists(f):
        f1 = file(f)
        ans = f1.read()
        f1.close()
        return ans
    else:
        return None

4.定义一个方法get_dir(folder),folder参数为任意一个文件夹,该函数返回folder文件夹的文件列表。提示(可以了解python的glob模块)

import os
import glob
def get_dir(folder = None):
    if folder == None:
        folder = os.getcwd()
    if os.path.isdir(folder):
        return [x.split('\\')[-1] for x in glob.glob('%s\\*.*'%folder)]
    else:
        return None
print(type(get_dir()))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值