欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python 7.

程序员文章站 2022-04-14 18:27:12
内容:join , fromkeys , set , .add , .update , .pop , .remove , 交集(s1&s2) , 并集(s1|s2) , 深浅拷贝 , .copy , import copy copy.deepcopy() , 交换a,b = b,a1.判断一个数是否 ......
内容:join , fromkeys , set , .add , .update , .pop , .remove , 交集(s1&s2) , 并集(s1|s2) , 深浅拷贝 , .copy , import copy  copy.deepcopy() , 交换a,b = b,a
1.判断一个数是否是水仙花数,水仙花数是一个三位数,三位数的每一位的三次方的和还等于这个数. 那这个数就是一个水仙花数, 例如: 153 = 1**3 + 5**3 + 3**3
a = input("请输入一个三位数:")
sum = 0
for el in a:
sum += int(el)**3
if sum == int(a):
print("%s是水仙花数" % a)
else:
print("%s不是水仙花数" % a)

a = input("请输入一个三位数:")
n = int(a[0])**3 + int(a[1])**3 + int(a[2])**3
if n == int(a):
print("%s是水仙花数" % a)
else:
print("%s不是水仙花数" % a)

#求出所有水仙花数:
for a in range(100,1000):
n = int(str(a)[0])**3 + int(str(a)[1])**3 + int(str(a)[2])**3
if n == a:
print("%s是水仙花数" % a)

2.给出一个纯数字列表.请对列表进行排序(升级题).
思路:1.完成a和b的数据交换. 例如, a = 10, b = 24 交换之后, a = 24, b = 10
2.循环列表. 判断a[i]和a[i+1]之间的大小关系, 如果a[i]比a[i+1]大. 则进行互换.循环结束的时候. 当前列表中最大的数据就会被移动到最右端.
3.想一想, 如果再次执行一次上面的操作. 最终第二大的数据就移动到了右端. 以此类推.如果反复的进行执行相应的操作. 那这个列表就变成了一个有序列表.
1.冒泡排序:
a = 10
b = 24
c = a
a = b
b = c
print(a,b)
或lst[i],lst[i+1] = lst[i+1],lst[i]
2.lst = [10, 9, 5, 6, 7, 5, 5, 8, 10, 6]
for i in range(len(lst)-1):
if lst[i] > lst[i+1]:
lst[i],lst[i+1] = lst[i+1],lst[i]
print(lst)
3.lst = [10, 9, 5, 6, 7, 5, 5, 8, 10, 6]
for el in range(len(lst)-1):
for i in range(len(lst)-1):
if lst[i] > lst[i+1]:
zjz = lst[i]
lst[i] = lst[i + 1]
lst[i + 1] = zjz
print(lst)
或for el in range(len(lst)):
for i in range(len(lst)-1):
if lst[i] > lst[i+1]:
lst[i],lst[i+1] = lst[i+1],lst[i]
print(lst)

3.完成彩票36选7的功能. 从36个数中随机的产生7个数.最终获取到7个不重复的数据作为最终的开奖结果.
随机数:
from random import randint
randint(0, 20) # 0 - 20 的随机数
from random import randint
s = set()
while len(s) < 7:
a = randint(1, 36) # 0 - 20 的随机数
s.add(a)
print(s)

4.税务部门征收所得税. 规定如下:
1). 收入在2000以下的. 免征.
2). 收入在2000-4000的, 超过2000部分要征收3%的税.
3). 收入在4000-6000的, 超过4000部分要征收5%的税.
4). 收入在6000-10000的, 超过6000部分要征收8%的税.
4). 收入在10000以上的, 超过部分征收20%的税.
注: 如果一个人的收入是8000, 那么他要交2000到4000的税加上4000到6000的税加上6000到8000的税.
收入 = 8000-(4000-2000)*3%-(6000-4000)*4%-(8000-6000)*8%
让用户输入它的工资, 计算最终用户拿到手是多少钱.
money = int(input("请输入工资:"))
if money < 2000:
print("税收为0元")
elif money<4000:
print("税为",(money-2000)*0.03,"元")
elif money <6000:
print("税为",(money-4000)*0.05+2000*0.03,"元")
elif money <10000:
print("税为",(money-6000)*0.08+2000*0.05+2000*0.03,"元")
else:
print("税为",(money-10000)*0.2+4000*0.08+2000*0.05+2000*0.03,"元")