经典python100例(1)

1.有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

for i in range(1,5):
    for j in range(1,5):
        for k in range(1,5):
            if i!=j and i!=k and j!=k:
                print(i*100+j*10+k,end=" ")

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

s=input("输入字符串:")
zimu=0
shuzi=0
qita=0
kongge=0
for ch in s:
    if (ord(ch)>64 and ord(ch)<91) or (ord(ch)>96 and ord(ch)<123): #大小写
        zimu+=1
    elif (ord(ch)>47 and ord(ch)<58): #数字
        shuzi+=1
    elif (ord(ch)==32):  #空格
        kongge+=1
    else:
        qita+=1
print("字母的个数为{},\n数字的个数为{},\n其他字符的个数为{},\n空格的个数为{}".format(zimu,shuzi,qita,kongge))

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

a=int(input("请输入A的值:"))
n=int(input("请输入位数:"))
lst=[]
sumi=0

if n<=0:
    print("Error")
else:
    for i in range(n):
        sumi+=a*10**i
        lst.append(sumi)
print(lst)
print(sum(lst))

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

def wanqu(n):
    if n<=1:
        return False
    else:
        lst=[]
        for i in range(1,n):
            if n%i==0:
                lst.append(i)
        if sum(lst)==n:
            return True
        else:
            return  False

for i in range(1,1000):
    if  wanqu(i):
        print(i,end=",")

一个正整数,加上100后是一个完全平方数,再加上168又是一个完全平方数。请问该数是多少?

n=1
while True:
    if ((int((n+100)**0.5))**2==n+100) and ((int((n+268)**0.5))**2==n+100):
        print(n)
        break
    n+=1

输入某年某

月某日,判断这一天是这一年的第几天?

year=int(input("year:"))
month=int(input("month:"))
day=int(input("day:"))
monthlst=[0,31,28,31,30,31,30,31,31,30,31,30]  #注意一定将列表第1个设为0,12月份没有

if (year%4==0 and year%100!=0) or year%400==0:
    monthlst[2]=29
if month<0 or month>12:
    print("Error")
else:
    sumday = 0
    for i in range(month):
        sumday+=monthlst[i]
    sumday=sumday+day
    print(sumday)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值