练习一:实现reverse(s)函数,功能与s.reverse()相同。


In [20]:
def reverse(line):
    print(line[::-1])

line='abcd'
reverse(line)


dcba

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


In [15]:
#直角三角形
line_1='|'
line_2='\\'
line_3='_'

c=int(input('请输入这个直角三角形的边长'))

for i in range(c):
    if i%1==1:
        print(line_1,line_2)
    elif i!=(c-1):
        print(line_1+i*' '+line_2)
    else:
        print(line_1+line_3*i+line_2)
        
#等腰三角形

line_1='/'
line_2='\\'
line_3='_'
c=int(input('请输入这个等腰三角形的边长'))

print((c+1)*' ',line_1,line_2,sep='')

for i in range(c-1):
    if i!=(c-2):
        print((c-i-1)*' ',line_1,2*i*' ',line_2)
    else:
        print((c-i-1)*' ',line_1,2*i*line_3,line_2)


请输入这个直角三角形的边长5
|\
| \
|  \
|   \
|____\
请输入这个等腰三角形的边长5
      /\
     /  \
    /    \
   /      \
  / ______ \

练习三:将任务4中的英语动词变复数的函数,完整实现。


In [5]:
def plural():
    word=input('请输入一个单词')
    line=list(word)

    if 's'==line[len(line)-1]:
         print('这个数是复数')
    elif 'h'==line[len(line)-1]:
        
        line.append('es')
        line=''.join(line)
        print(line)

    elif 'y'==line[len(line)-1]:
        line.remove('y')
        line.append('ies')
        line=''.join(line)
        print(line)
    else:
        line.append('s')
        line=''.join(line)
        print(line)

plural()


请输入一个单词lunch
lunches

挑战性习题:python语言老师为了激励学生学python,自费买了100个完全相同的Macbook Pro,分给三个班级,每个班级至少分5个,用穷举法计算共有多少种分法?


In [1]:
a=c=b=5
i=0
for a in range(4,91):
    for b in range(4,91):
        c=100-b-a
        i+=1
        if c<5:
            continue
print('一共有',i,'种分法')


一共有 7569 种分法

In [ ]:


In [ ]:


In [ ]: