Python基础100题打卡Day5

题目十六

使用列表理解来对列表中的每个奇数进行平方。该列表由逗号分隔的数字序列输入。
假设向程序提供了以下输入:
1,2,3,4,5,6,7,8,9
输出为:
1,9,25,49,81

代码实现

方法一

lst = [str(int(i)**2) for i in input("请输入需要检测的数字:").split(",") if int(i) % 2]
print(",".join(lst))

方法二

num_check = input("请输入需要检测的数字:").split(",")
num_square = []
for i in num_check:
    if int(i) % 2:
        num_square.append(str(int(i)**2))
print(",".join(num_square))

运行结果

请输入需要检测的数字:1,2,3,4,5,6,7,8,9
1,9,25,49,81

题目十七

编写一个程序,根据控制台输入的事务日志计算银行帐户的净金额。事务日志格式如下所示:
D 100
W 200
D表示存款,W表示提款。
假设向程序提供了以下输入:
D 300
D 300
W 200
D 100
则输出为:
500

代码实现

方法一

total = 0
while True:
    s = input("请输入需要进行的操作:").split()
    if not s:
        break
    operation , money = map(str , s)
    if operation == 'D':
        total += int(money)
    if operation == 'W':
        total -= int(money)

print("余额:",total)

方法二

total = 0
while True:
    action = input("请输入需要进行的操作:存款(D)/取款(W)/查询(C)/退出(Q)").lower()
    if action == 'd' :
        money = int(input("请输入存款:"))
        total += money
    elif action == 'w':
        money = int(input("请输入取款:"))
        total -= money
        if total < 0:
            print("你的余额不足")
            break
    elif action == 'c':
        print("您的余额:",total)
    else :
        quit()

运行结果

方法一

请输入需要进行的操作:D 300
请输入需要进行的操作:D 300
请输入需要进行的操作:W 200
请输入需要进行的操作:D 100
请输入需要进行的操作:
余额: 500

方法二

请输入需要进行的操作:存款(D)/取款(W)/查询(C)/退出(Q)D
请输入存款:3000
请输入需要进行的操作:存款(D)/取款(W)/查询(C)/退出(Q)W
请输入取款:200
请输入需要进行的操作:存款(D)/取款(W)/查询(C)/退出(Q)C
您的余额: 2800
请输入需要进行的操作:存款(D)/取款(W)/查询(C)/退出(Q)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值