In [ ]:
练习1
s = input('输入您需要反转的字符串')
n = len(s)
def reverse(s):
s_new = ['' for i in range(n)]
for i in range(n):
s_new[i] = s[n-i-1]
return s_new
out = reverse(s)
for i in range(n):
print(out[i],sep='',end='')
练习2
char = input('输入符号')
line = int(input('输入行数'))
def right():
k = 1
for i in range(line):
print(char*k)
k += 2
def iso():
k = 1
for i in range(line):
print('{:^30}'.format(char*k))
k += 2
def oth():
global n
k = 1
for i in range(line):
print(' '*n,end='')
print(char*k)
k += 2
n += 2
n = 1
right()
iso()
oth()
练习3
unr = ['calf','elf','half','hoof','knife','leaf','life',
'loaf','scarf','self','sheaf','shelf','thief','wife',
'wolf','fireman','foot','goose','louse','man','mouse',
'tooth','woman','child','ox','echo','embargo','hero',
'potato','tomato','torpedo','veto']
reg = ['calves','elves','halves','hooves','knives','leaves',
'life','lives','loaves','scarves','selves','thieves',
'wives','wolves','firemen','feet','geese','lice','men',
'mice','teeth','women','children','oxen','echoes',
'embargoes','heroes','potatoes','tomatoes','torpedoes',
'vetoes']
s = input('输入你想要的单词')
k = len(s)
if s in unr:
for i in range(len(unr)):
if s == unr[i]:
print(reg[i])
break
elif (s[k-1] == 'h') and (s[k-2] == 'c'):
print(s,'es',sep='')
else:
print(s,'s',sep='')
练习4
import random
char = input('符号是:')
a1 = int(input('上底是:'))
a2 = int(input('下底是:'))
def ech():
n = random.randint(0,10)
k = a1
if n == 0:
while k != a2:
print(char*k)
k += 1
elif a2-a1+1 > n:
while k != a2:
print(' '*n,end='')
print(char*k)
k += 1
n += 1
else:
while k != a2:
print(' '*n,end='')
print(char*k)
k += 1
n -= 1
ech()
练习5
import random
char = input('输入你想要的符号')
n = random.randint(5,20)
k = n
while k != 0:
print(' '*k,end='')
print(char*((n-k)*2+1))
k -= 1
print(char*(2*n+1))
k += 1
while k != n+1:
print(' '*k,end='')
print(char*((n-k)*2+1))
k += 1
练习6
s = input('输入字符串:')
n = len(s)
k = 0
while k != n:
print(' '*k,end='')
print(s[n-1:k:-1]+s[k]+s[k:n-1]+s[n-1])
k += 1
print(' '*k,end='')
print(s[n-1])