python练习4(能用就行系列)——题源菜鸟教程

16.输出指定格式的日期。

import datetime
# 输出今日日期,格式为 dd/mm/yyyy。
print(datetime.date.today().strftime('%d/%m/%Y'))
    # 创建日期对象
date1 = datetime.date(1941, 1, 5)
print(date1.strftime('%d/%m/%Y'))
    # 日期算术运算
date2 = date1 + datetime.timedelta(days=1)
print(date2.strftime('%d/%m/%Y'))
    # 日期替换
date3 = date1.replace(year=date1.year + 1)
print(date3.strftime('%d/%m/%Y'))

17.输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。

str_1 = input("请输入字符串:")
#count1表示英文字母数量
count1=0
#count2表示空格数量
count2=0
#count3表示数字数量
count3=0
#count4表示其他字符个数
count4=0
for x in str_1:
    if x.isalpha():
        count1 +=1
    elif x.isdigit():
        count3 +=1
    elif x.isspace():
        count2 +=1
    else:
        count4 +=1
print(f"英文字母数量共有{count1}个,空格数量共有{count2}个,"
      f"数字数量共有{count3}个,其他字符数量共有{count4}个。")

18.求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。

x = int(input("请输入想执行这种操作的数字:"))
y = int(input("请输入要加的数量"))
list = []
count = 0
outcome = 0
for k in range(y):
    count +=x*(10**k)
    list.append(count)
for i in range(y):
    outcome = list[i]+outcome
print(outcome)

19.一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。

#完数:一个数恰好等于它的所有不同因子之和,所以和之前的拆分因子不同,
#比方说28=4*7=2*2=2*14=1*28,那么除28本身外,1,2,4,7,14都是它的因子,那么28=1+2+4+7+14
#所以这题的关键是找到所有能被它整除的数,而不是分解因数。
for k in range(2,1001):
    sum =1
    for x in range(2,k):
        if k%x == 0:
            sum +=x
    if sum ==k:
        print(k)

20.一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?

high = 100
sum = 0
for x in range(10):
    #这里得到了第十次落地经过的高度,因为小球最开始是在空中,所以第一次落地经过100
    sum +=high
    #这里得到第十次反弹的高度
    high = high/2
print(f"第十次落地时经过{sum}米,第十次反弹高度为{high}")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值