Day 3 Python刷题第3天

j​​​​​​题目来源:16.16.判断三角形_哔哩哔哩_bilibili

今天继续刷入门基础题

1.找完数(1000以内的)

一个数恰好等于除了它以外的因子之和就是完数

for i in range(1,1000):
    sum = 0
    for j in range(1,i):
        if i%j == 0:
            sum += j
    if sum == i:
        print(f"{i}是完数")

巧妙,定了一个sum,放在内层循环外面去累加因子

2.找质数因子:输入1个 正整数,输出所有的质数因子

a = int(input("请输入一个正整数: "))
y = 2 #最小的素数为2
list= []

while a != y:
    if a%y == 0:
        list.append(y)
        a /= y #这样继续找下一个
    else:
        y += 1

list.append(int(a))
for i in list:
    print(i,end = " ")

3.输入某年某月某日,判断这一天是这一年的第几天

时间处理模块 datetime

map函数:根据提供的函数(通过参数提供)对指定序列做映射

见:map函数-CSDN博客

map(function, iterable)

import datetime

year,month,day = map(int,input().split())

yuandan = datetime.datetime(year,1,1)
now = datetime.datetime(year,month,day)
print((now-yuandan).days+1)

4.斐波那契数列

经典题目

#递归
def fib(n):
    if n == 1 or n == 2:
        return 1
    else:
        return fib(n-1)+fib(n-2)
print(fib(6))

#非递归
n = 6
fibs = [1,1]
for i in range(2,n+1):
    fibs.append(fibs[i-1]+fibs[i-2])
print(fibs[n-1])

5.把一个列表数据复制到另外一个列表里

浅拷贝和深拷贝,深拷贝不会随着原来列表的变动而变动,浅拷贝会

先导入一个copy模块

import copy

list = [1,2,3,4]
list1 = copy.copy(list)#copy模块下的copy函数
list[0]
#往原来的列表里面加0,新的list1并没随之改变,就是深复制
print(list1) #[1, 2, 3, 4]

6.暂停程序后输出

想让程序暂停,需要导入一个time模块:time.sleep()  #sec

import time

time.sleep(2)#暂停两秒后输出
print("hello world")

7.统计字符

输入一行字符,统计出其中的中英文字母,空格,数字,和其它字符的个数

isalpha()方法等...

string = input("请输入字符串")

char = 0
number = 0
space = 0
other = 0

for i in string:
    if i.isalpha():
        char += 1
    elif i.isdigit():
        number += 1
    elif i.isspace():
        space += 1
    else:
        other += 1

print(f"英文字母有{char}个,数字有{number},空格有{space},其他字符有{other}")

今天是16-26题,笔记如上,明天继续

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值