day7计算作业详解
1.day7题目
1.判断一个数是否是水仙花数, 水仙花数是一个三位数, 三位数的每一位的三次方的和还等于这个数. 那这个数就是一个水仙花数, 例如: 153 = 13 + 53 + 3**3
2.给出一个纯数字列表. 请对列表进行排序(升级题).
思路:
完成a和b的数据交换. 例如, a = 10, b = 24 交换之后, a = 24, b = 10
循环列表. 判断a[i]和a[i+1]之间的大小关系, 如果a[i]比a[i+1]大. 则进行互换. 循环结束的时候. 当前列表中最大的数据就会被移动到最右端.
想一想, 如果再次执行一次上面的操作. 最终第二大的数据就移动到了右端. 以此类推. 如果反复的进行执行相应的操作. 那这个列表就变成了一个有序列表.
3.完成彩票36选7的功能. 从36个数中随机的产生7个数. 最终获取到7个不重复的数据作为最终的开奖结果.
随机数:
from random import randint
randint(0, 20) # 0 - 20 的随机数
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%
让用户输入它的工资, 计算最终用户拿到手是多少钱.
5.编写函数处理user_list 并返回如下结果:
[{"name":"alex","hobby_list": ["抽烟","喝酒","烫头"]},
{"name":"wuhir","hobby_list": ["喊麦","街舞"]},]
user_list=[
{"name": "alex","hobby":"抽烟"},
{"name" :"alex","hobby":"喝酒"},
{"name" :"alex","hobby":"烫头"},
{"name":"wusir","hobby":"喊麦"},
{"name":"wusir","hobby":"街舞"},
]
2.题目详解
查看详细内容
1.
suma = 0
i_num = input("请输入判断数字(三位数):").strip()
if len(i_num) == 3 and i_num.isdigit():
for i in i_num:
i = int(i)
suma += i**3
else:
if suma == int(i_num):
print("这是一个水仙花数")
else:
print("这不是一个水仙花数")
else:
print("请输入三位数的数字")
i_num = input("请输入判断数字(三位数):").strip()
s = int(i_num[0])3 + int(i_num[1])3 + int(i_num[2])**3
print(s)
if int(i_num) == s:
print("这是一个水仙花数")
else:
print("这不是一个水仙花数")
a = 10
b = 5
print(a,b)
a,b = b,a
print(a,b)
2-1:冒泡排序
lst = [5,8,2,11,76,100]
count = 0
while count < len(lst):
index = 0
while index < len(lst)-1: #优化len(lst)*0.5 循环一半
if lst[index] > lst[index+1]:
lst[index],lst[index+1] = lst[index+1],lst[index]
index +=1
count += 1
print(lst)
for j 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)
for j in range(len(lst)):
for i in range(int(len(lst)*0.5)):
if lst[i] > lst[i+1]:
lst[i],lst[i+1]=lst[i+1],lst[i]
print(lst)
from random import randint
s = set() #定义一个空集合
while len(s) <= 6:
ret = randint(0, 36)
s.add(ret)
print(s)
salary = input('你的工资:').strip()
if salary.isdigit():salary=int(salary)
if salary <= 2000:
print('收入%s元,免征.'%salary)
elif salary <= 4000:
tax = (salary - 2000)0.03
print('收入%s元,你要交税%s元, 实际收入:%s元'%(salary,tax,salary-tax))
elif salary <= 6000:
tax = 20000.03 + (salary-4000)0.05
print('收入%s元,你要交税%s元, 实际收入:%s元'%(salary,tax,salary-tax))
elif salary <= 10000:
tax = 20000.03 + 20000.05 + (salary-6000)0.08
print('收入%s元,你要交税%s元, 实际收入:%s元'%(salary,tax,salary-tax))
else:
tax = 20000.03 + 20000.05 + 40000.08 + (salary-10000)0.20
print('收入%s元,你要交税%s元, 实际收入:%s元'%(salary,tax,salary-tax))
def gen_lst(arg):
lst = []
dic = {}
for i in arg:
dic.setdefault(i['name'],[]).append(i['hobby'])
for k,v in dic.items():
lst.append({'name':k,'hobby_list':v})
return lst
print(gen_lst(user_list))
day7计算作业详解的更多相关文章
- day6作业详解
1.day6题目 1,老男孩好声⾳选秀⼤赛评委在打分的时候呢, 可以进⾏输入. 假设, 老男孩有10个评委. 让10个评委进⾏打分, 要求, 分数必须⼤于5分, 小于10分. 电影投票. 程序先给出⼀ ...
- day4列表作业详解
1.day4题目 day4作业 1,写代码,有如下列表,按照要求实现每一个功能 li = ["alex", "WuSir", "ritian" ...
- QuantLib 金融计算——基本组件之天数计算规则详解
目录 天数计算规则详解 定义 30 / 360 法 30/360 US 30/360 Bond Basis 30E/360 30E/360 ISDA Actual 法 Actual/Actual IC ...
- day22作业详解
1.面向对象作业1 2.作业详解 点击查看详细内容 #1. class Li(object): def func1(self): print('in func1') obj = Li() obj.fu ...
- DFT计算过程详解
DFT计算过程详解 平时工作中,我们在计算傅里叶变换时,通常会直接调用Matlab中的FFT函数,或者是其他编程语言中已经为我们封装好的函数,很少去探究具体的计算过程,本文以一个具体的例子,向你一步一 ...
- day10函数作业详解
1.day10题目 2,写函数,接收n个数字,求这些参数数字的和.(动态传参) 3,读代码,回答:代码中,打印出来的值a,b,c分别是什么?为什么? a=10 b=20 def test5(a,b): ...
- day9函数作业详解
1.day9题目 1,整理函数相关知识点,写博客. 2,写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者. 3,写函数,判断用户传入的对象(字符串.列表.元组 ...
- day8文件操作作业详解
1.day8题目 1,有如下文件,a1.txt,里面的内容为: 老男孩是最好的培训机构, 全心全意为学生服务, 只为学生未来,不为牟利. 我说的都是真的.哈哈 分别完成以下的功能: a,将原文件全部读 ...
- day3字符串操作作业详解
1.day3题目 1.有变量name = "aleX leNb" 完成如下操作: 1) 移除 name 变量对应的值两边的空格,并输出处理结果 2) 移除name变量左边的&quo ...
随机推荐
- myeclipse内存不足的处理
Myeclipse内存溢出解决方案 1.tomcat内存扩展 修改tomcat中bin目录下catalina.bat文件在echo Using CATALINA_BASE: "%CATAL ...
- window/body/img/iframe 的onload事件
在html页面中,只有body,img,iframe这一类标签具有onload事件. onload事件表示在当前元素载入完成后发生的事件.其中,window也有onload事件,但是跟body的是同一 ...
- eclipse的maven工程Dynamic Web Module 2.3 修改为3.0 解决办法
1. 创建Maven Web工程 2. 项目只有src/main/resources >Java Build Path导入Tomcat运行环境 3. 删除以图片红框中的文件 4. Propert ...
- exec 和 spawn 的区别
参考资料: difference-between-spawn-and-exec-of-node-js-child_process process_child 最近在用nodejs 的child_pro ...
- Hover show tips
像上面这种效果,hover1时显示2,且1和2有一定间距的东东,一般有两种实现办法: 1.用JS,原理:over1时让2显示,out1时开个定时器延迟500ms再消失,over2时清除定时器,out2 ...
- CodeForces - 311B:Cats Transport (DP+斜率优化)
Zxr960115 is owner of a large farm. He feeds m cute cats and employs p feeders. There's a straight r ...
- Scrapy,终端startproject,显示错误TimeoutError: [WinError 10060] 由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。
F:\python_project\test>scrapy startproject spz Traceback (most recent call last): File "d:\p ...
- P2936(BZOJ3396) [USACO09JAN]全流Total Flow[最大流]
题 裸题不多说,在网络流的练习题里,你甚至可以使用暴力. #include<bits/stdc++.h> using namespace std; typedef long long ll ...
- Block Change Tracking (块改变跟踪)
理论背景:Block ChangeTracking 是Oracle 10g里推出的特性. Block change tracking 会记录data file里每个block的update 信息,这些 ...
- [转]提高 web 应用性能之 CSS 性能调优
简介 Web 开发中经常会遇到性能的问题,尤其是 Web 2.0 的应用.CSS 代码是控制页面显示样式与效果的最直接“工具”,但是在性能调优时他们通常被 Web 开发工程师所忽略,而事实上不规范的 ...