练习一:自己定义一个reverse(s)函数,功能返回字符串s的倒序字符串。


In [15]:
def reserve(s):
    for i in range((len(s)-1),0,-1):
        print(s[i],end='')
    print(s[0])

s='happy'
reserve(s)


yppah

练习二:写函数,根据给定符号和行数,打印相应直角三角形,等腰三角形及其他形式的三角形。


In [20]:
def fuc1(s):
    for i in range(1,len(s)+1):
        for j in range(0,i):
            print(s[j],end='')
        print()

s='也无风雨也无情'
fuc1(s)
print('-'*20)


也
也无
也无风
也无风雨
也无风雨也
也无风雨也无
也无风雨也无情
--------------------

In [25]:
def fuc1(line):
    print((len(line)*2-1)*' '+line[0])
    for i in range(2,len(line)*2+1,1):
        if (i%2)==0:
            print((len(line)*2-i)*' '+line[0:(i//2)] +line[((i//2)-1):0:-1]+line[0])
        else:
            print((len(line)*2-i)*' '+line[0:((i+1)//2)] +line[((i+1)//2)-2:0:-1]+line[0])
    

line='也无风雨也无情'
fuc1(line)
print('-'*40)


             也
            也也
           也无也
          也无无也
         也无风无也
        也无风风无也
       也无风雨风无也
      也无风雨雨风无也
     也无风雨也雨风无也
    也无风雨也也雨风无也
   也无风雨也无也雨风无也
  也无风雨也无无也雨风无也
 也无风雨也无情无也雨风无也
也无风雨也无情情无也雨风无也
----------------------------------------

练习三:将任务4中的英语名词单数变复数的函数,尽可能的考虑多种情况,重新进行实现。


In [9]:
def change(word):
    if word.endswith(('s','sh','ch','x','o')):
        print(word+'es')
    elif word.endswith(('by','cy','dy','fy','gy','hy','jy','ky','ly','my','ny','py','qy','ry','sy','ty','vy','wy','xy','zy')):
        print('把y改i再加es')
    else:
        print(word+'s')
    
a=str(input())
change(a)


sport
sports