In [21]:
#练习一:实现reverse(s)函数,功能与s.reverse()相同。
line=str(input('请输入内容'))
def reverse():
print(line[::-1])
reverse()
In [72]:
#练习二:写函数,根据给定符号和行数,打印相应直角三角形,等腰三角形及其他形式的三角形。
def print_triangle():
n=int(input('请输入行数'))
for i in range(n+1):
print('*'*i)
print_triangle()
def isoceles_triangle():
n=int(input('请输入行数'))
for i in range(0, n):
for k in range(n-i,0,-1):
print(' ', end='')
for j in range(0,2*i-1):
print('*',end='')
print()
isoceles_triangle()
In [83]:
#练习三:将任务4中的英语名词单数变复数的函数,尽可能的考虑多种情况,重新进行实现。
def words():
word=input('请输入一个单词')
if word.endswith('x') or word.endswith('s') or word.endswith('sh') or word.endswith('ch') :
print(word[::]+'es')
elif word.endswith('y'):
print(word[:len(word)-1]+'ies')
else:
print(word[::]+'s')
words()
In [128]:
#练习四:写函数,根据给定符号,上底、下底、高,打印各种梯形
def print_trapezoid():
m=int(input('请输入梯形上底'))
n=int(input('请输入梯形下底'))
for i in range(m,n+1):
print('*'*i)
print_trapezoid()
In [90]:
#练习五:写函数,根据给定符号,打印各种菱形
def print_rhombus():
n=int(input('请输入行数'))
for i in range(0, n):
for k in range(n-i,0,-1):
print(' ', end='')
for j in range(0,2*i-1):
print('*',end='')
print()
for i in range(n, -1,-1):
for k in range(n-i,0,-1):
print(' ', end='')
for j in range(0,2*i-1):
print('*',end='')
print()
print_rhombus()
In [89]:
#练习六:与本小节任务基本相同,但要求打印回文字符倒三角形。
line = '赏花归去马如飞'
for i in range(len(line)*2,0,-1):
if i == 1:
print(' '*(len(line)*2-i)+line[0])
elif i%2 == 1:
print(' '*(len(line)*2-i)+line[:i//2] + line[i//2] + line[i//2-1::-1])
else:
print(' '*(len(line)*2-i)+line[:i//2] + line[i//2-1::-1])