python 练习2020/07/28

1、实现自己的数学模块mymath,提供有4个函数,分别为加减乘除,在B模块中调用A模块的函数。
mymath.py:
def add(*args):
    result=0
    for num in args:
        result+=num
    return result

def sub(a,b,*args):
    return a-b

def mul(a,b):
    return a*b

def div(a,b):
    return a/b

test.py:
from mymath import *

print(add(10,20,30))

print(sub(10,20,8))

print(mul(10,20))

print(div(5,2))

2. 实现自己的字符串模块mystr,里面有方法:isdigit,strip, join,split

mystr.py:
def isdigit(s):
    if not isinstance(s,str):
        return False
    for i in s:
        if i not in '0123456789':
            return False
    return True

def strip(s,strip_str=None):
    if not isinstance(s,str):
        return False
    
    if strip_str==None:
        strip_str='\r\n\t\f '
    s=list(s)
    new_s=s[:]
    for i in s:
        if i in strip_str:
            new_s.remove(i)
        else:
            break
    for i in s[::-1]:
        if i in strip_str:
            new_s.remove(i)
        else:
            break
    return ''.join(new_s)


def join(s,join_str=None):
    if not isinstance(s,list):
        return False
    if join_str==None:
        join_str=''
    result=''
    for i in s:
        result+=i+join_str
    if join_str=='':
        return result
    else:
        return result[:-1]

def split(s,split_str=None,times=None):
    if not isinstance(s,str):
        return False
    if split_str==None:
        split_str=' '
    if times==None:
        times=s.count(split_str)
    index=0
    length=len(split_str)
    result=[]
    while times>0:
        temp=''
        for i in range(index,len(s)):
            if s[i:i+length]!=split_str:
                temp+=s[i]
                index+=1
            else:
                index+=length
                break
        result.append(temp)
        times-=1
    result.append(s[index:])
    return result

Test.py:


from mymath import *
print(isdigit('3435'))

print(strip('  dfsf  '))

print(join(['af','x','d'],'*'))

print(split('a*d*g*ad','*'))




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值