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 ...
随机推荐
- 素数筛总结篇___Eratosthenes筛法和欧拉筛法(*【模板】使用 )
求素数 题目描述 求小于n的所有素数的数量. 输入 多组输入,输入整数n(n<1000000),以0结束. 输出 输出n以内所有素数的个数. 示例输入 10 0 示例输出 4 提示 以这道题目为 ...
- SDUT OJ 1479 数据结构实验之栈:行编辑器
数据结构实验之栈:行编辑器 Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 一个简单的行编辑程序的功能是:接受用户从终端输入的程 ...
- HDU2243 考研路茫茫——单词情结 ——AC自动机、矩阵优化
题目链接:https://vjudge.net/problem/HDU-2243 考研路茫茫——单词情结 Time Limit: 2000/1000 MS (Java/Others) Memor ...
- 一.编译nginx
前往nginx.org下载需要的nginx版本,解压之后目录如下: auto : 主要存放辅助configure脚本执行时的文件, 例如判定nginx支持的模块,操作系统可供nginx使用的特性等. ...
- PHP的深copy和浅copy
1.对象复制的由来 为什么对象会有“复制”这个概念,这与PHP5中对象的传值方式是密切相关的,让我们看看下面这段简单的代码 /** * 电视机类 */ class Television { /** * ...
- IntelliJ IDEA 的 project 和 module 区别与关系
在IDEA 创建一个project,目录结构是这样的:在project下创建一个module之后目录结构是这样的: 简单的概括如下: IntelliJ系中的 Project 相当于Eclipse系中 ...
- <十七>UML核心视图动态视图之时序图
一:时序图 --->时序图是用于描述按时间顺序排列的对象之间的交互模式. --->它按照参与交互的对象所具有的“生命线”和他们相互发送的消息来显示这些对象. --->时序图包含对象和 ...
- 「BZOJ2721」「LuoguP1445」 [Violet]樱花(数论
题目背景 我很愤怒 题目描述 求方程 $\frac{1}{x}+\frac{1}{y}=\frac{1}{N!}$ 的正整数解的组数,其中$N≤10^6$. 解的组数,应模$1e9+7$. 输入输出格 ...
- javacpp-FFmpeg系列补充:FFmpeg解决avformat_find_stream_info检索时间过长问题
javacpp-ffmpeg系列: javacpp-FFmpeg系列之1:视频拉流解码成YUVJ420P,并保存为jpg图片 javacpp-FFmpeg系列之2:通用拉流解码器,支持视频拉流解码并转 ...
- 响应式web设计,html5和css3实战(@author Ben Fraim)
重定向 //请求重定向简化写法 response.sendRedirect("/day09/adv.html"); 转发 request.getRequestDispatcher( ...