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

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

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

In [1]:
#练习1
def reverse(line):
    print(line[::-1])
    
line = str(input('请输入字符'))
reverse(line)


请输入字符hello
olleh

In [2]:
#练习2 直角三角形

line = str(input('请输入'))
for i in range(1,len(line)):
    print(line[0:i])


请输入¥¥¥¥¥¥¥¥¥¥¥¥¥
¥
¥¥
¥¥¥
¥¥¥¥
¥¥¥¥¥
¥¥¥¥¥¥
¥¥¥¥¥¥¥
¥¥¥¥¥¥¥¥
¥¥¥¥¥¥¥¥¥
¥¥¥¥¥¥¥¥¥¥
¥¥¥¥¥¥¥¥¥¥¥
¥¥¥¥¥¥¥¥¥¥¥¥

In [3]:
#练习2 等腰三角形
line = str(input('请输入字符'))
n = len(line)
for i in range(1,2*n+1):
    print(' '*(2*n-i+1) + line[0]*(2*i-1))


请输入字符#############
                          #
                         ###
                        #####
                       #######
                      #########
                     ###########
                    #############
                   ###############
                  #################
                 ###################
                #####################
               #######################
              #########################
             ###########################
            #############################
           ###############################
          #################################
         ###################################
        #####################################
       #######################################
      #########################################
     ###########################################
    #############################################
   ###############################################
  #################################################
 ###################################################

In [7]:
#练习3
def result():
    word = input('请输入一个名词')
    line = list(word)
    n = len(line)
    
    if line[n-1] == 'y':
        line.remove('y')
        line.append('ies')
        line = ''.join(line)
        print(line)
    if line[n-1] == 's':
        line.append('es')
        line = ''.join(line)
        print(line)
    if line[n-2:n:1] == 'ch':
        line.append('es')
        line = ''.join(line)
        print(line)
    if line[n-2:n:1] == 'sh':
        line.append('es')
        line = ''.join(line)
        print(line)
    else:
        line.append('s')
        line = ''.join(line)
        print(line)
result()


请输入一个名词kiss
kisses
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-7-bb40a6e8ff49> in <module>()
     26         line = ''.join(line)
     27         print(line)
---> 28 result()

<ipython-input-7-bb40a6e8ff49> in result()
     23         print(line)
     24     else:
---> 25         line.append('s')
     26         line = ''.join(line)
     27         print(line)

AttributeError: 'str' object has no attribute 'append'

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


In [8]:
total = 0
for i in range(5,90):
    for j in range(5,95-i):
        total += 1
print(total)


3655