python day08作业


# 写代码,有如下变量,请按照要求实现每个功能 (共6分,每小题各0.5分)
一:for循环
# 1.1 for循环嵌套之打印99乘法表
for i in range(1, 10):  # i=1
    # print(i)  # 1 2 ... 9
    for j in range(1, i + 1):  # range(1, 2) --> 循环1次  range(1, 3)
        # 打印乘法表
        # i=1 循环一次, i=2 循环两次,
        # i=9 循环9次, 9 * 1 = 9*1, 9 * 2 = 9*2
        print('%s * %s = %s' % (i, j, i * j), end='   ')  # \n

    # 默认打印换行
    print()
View Code


# 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
'''
初始化金字塔层数: 5层
max_level = 5

# 外层循环,打印总层数, 总共循环打印5层,将1-5依次交给current_level
for current_level in range(1, max_level + 1):  # range(5)  0-4

    # 打印每一层的空格数, 需要打印空格的次数,每次打印一个 ' ' 空格
    for i in range(max_level - current_level):
        print(' ', end='')

    # 打印每一层的*号数
    for j in range(2 * current_level - 1):  # 2 * 1 - 1, 2 * 2 - 1 == 3
        print('*', end='')

    # 打印换行
    print()

'''
# 方式二
max_level = 5

# 第一层打印,

for line in range(1, max_level * 2, 2):
    n = '*' * line
    # 字符串的内置方法: center(宽度, '填充的字符')
    print(n.center(max_level * 2, ' '))
'''

 


# 1.3 用for+range改写今日早晨默写的代码,作为明天默写内容
username = 'tank'
password = '123'
# count = 0
# while count < 3:


# 通过for循环实现循环三次
for line in range(3):  # range(3) ---> 0-2 控制循环次数
    inp_name = input('请输入您的账号:')
    inp_pwd = input('请输入您的密码:')

    if inp_name == username and inp_pwd == password:
        print('登录成功')

        while True:
            cmd = input("输入命令>: ")
            if cmd == 'q':  # 整个程序结束,退出所有while循环
                break
            else:
                print('命令{x}正在运行'.format(x=cmd))
        break

    else:
        print('账号名或密码错误')
        # count += 1

else:
    print('输错3次,退出')


二:字符串操作

# 写代码,有如下变量,请按照要求实现每个功能 (共6分,每小题各0.5分)
name = " aleX"
print(name)
# 1)    移除 name 变量对应的值两边的空格,并输出处理结果
# print(name.strip())

# 2)    判断 name 变量对应的值是否以 "al" 开头,并输出结果# print(name.startswith('al'))

# 3)    判断 name 变量对应的值是否以 "X" 结尾,并输出结果# print(name.endswith('X'))

# 4)    将 name 变量对应的值中的 “l” 替换为 “p”,并输出结果
# name = name.replace('l', 'p')
# print(name)

# 5)    将 name 变量对应的值根据 “l” 分割,并输出结果。
# print(name.split('l'))

# 6)    将 name 变量对应的值变大写,并输出结果# print(name.upper())

# 7)    将 name 变量对应的值变小写,并输出结果# print(name.lower())

# 8)    请输出 name 变量对应的值的第 2 个字符?
# print(name[1])

# 9)    请输出 name 变量对应的值的前 3 个字符?
# print(name[:3])

# 10)    请输出 name 变量对应的值的后 2 个字符?# print(name[-2:])

# 11)    请输出 name 变量对应的值中 “e” 所在索引位置?# print(name.index('e'))  # 3

# 12)    获取子 "序列" ,去掉最后一个字符。如: oldboy 则获取 oldbo。
# print(name[:-1])

 

posted @ 2020-03-10 16:43  Only-W  阅读(163)  评论(0编辑  收藏  举报