python第八天作业
一:for循环
1.1 for循环嵌套之打印99乘法表
count = 0
for i in range(1, 10):
for a in range(1, i + 1):
count = i * a
print('{x} * {z} = {c} '.format(z=i, x=a, c=count), end='\t')
print()
1.2 for循环嵌套之打印金字塔
提示分析如下
''' #max_level=5 * #current_level=1,空格数=4,*号数=1 *** #current_level=2,空格数=3,*号数=3 ***** #current_level=3,空格数=2,*号数=5 ******* #current_level=4,空格数=1,*号数=7 ********* #current_level=5,空格数=0,*号数=9 #数学表达式 空格数=max_level-current_level *号数=2*current_level-1 '''
# 方案一
y = '*'
for i in range(5):
x = (i * 2 + 1) * y
print(x.center(10, ' '))
# 方案二
y = '*'
for i in range(5):
print('{0: ^10}'.format((i * 2 + 1) * y))
1.3 用for+range改写今日早晨默写的代码,作为明天默写内容
username = 'egon'
password = '123'
for i in range(3):
user_name = input('your name:>')
user_pwd = input('your password:>')
if user_name == username and user_pwd == password:
print('登陆成功')
while True:
cmd = input('请输入您的命令>:')
if cmd == 'q':
break
else:
print('命令{x}正在运行'.format(x=cmd))
break
else:
print('账号密码错误请重试')
else:
print('三次登陆失败,自动退出')
二:字符串操作
写代码,有如下变量,请按照要求实现每个功能 (共6分,每小题各0.5分)
name = " aleX"
- 移除 name 变量对应的值两边的空格,并输出处理结果
res1 = name.strip()
print(res1)
- 判断 name 变量对应的值是否以 "al" 开头,并输出结果
res2 = name.startswith('al')
print(res2)
- 判断 name 变量对应的值是否以 "X" 结尾,并输出结果
res3 = name.endswith('X')
print(res3)
- 将 name 变量对应的值中的 “l” 替换为 “p”,并输出结果
res4 = name.replace('l','p')
print(res4)
- 将 name 变量对应的值根据 “l” 分割,并输出结果。
res5 = name.split('l')
print(res5)
- 将 name 变量对应的值变大写,并输出结果
res6 = name.upper()
print(res6)
- 将 name 变量对应的值变小写,并输出结果
res7 = name.lower()
print(res7)
- 请输出 name 变量对应的值的第 2 个字符?
res8 = name[1]
print(res8)
- 请输出 name 变量对应的值的前 3 个字符?
res9 = name[0:3]
print(res9)
- 请输出 name 变量对应的值的后 2 个字符?
res10 = name[-2:]
print(res10)
- 请输出 name 变量对应的值中 “e” 所在索引位置?
res11 = name.find('e')
print(res11)
- 获取子序列,去掉最后一个字符。如: oldboy 则获取 oldbo。
res12 = name [:-1]
print(res12)