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 ...
随机推荐
- ActiveMQ之点对点使用
package com.toov5.producer; import javax.jms.Connection; import javax.jms.JMSException; import javax ...
- Dubbo之消费者
在写 dubbbo调用时候 <dubbo:reference 不能有空格! 项目结构: pom: <project xmlns="http://maven.apache.org ...
- python读取文件后切片
from itertools import islice with open(“1.txt") as f: for a in islice(f,0,2): print(a)
- ACM学习历程—Codeforces 446C DZY Loves Fibonacci Numbers(线段树 && 数论)
Description In mathematical terms, the sequence Fn of Fibonacci numbers is defined by the recurrence ...
- ACM学习历程——HDU4814 Golden Radio Base(数学递推) (12年成都区域赛)
Description Golden ratio base (GRB) is a non-integer positional numeral system that uses the golden ...
- bzoj 3527: [Zjoi2014]力 快速傅里叶变换 FFT
题目大意: 给出n个数\(q_i\)定义 \[f_i = \sum_{i<j}{\frac{q_iq_j}{(i-j)^2}} - \sum_{i>j}\frac{q_iq_j}{(i-j ...
- 【Lintcode】033.N-Queens II
题目: Follow up for N-Queens problem. Now, instead outputting board configurations, return the total n ...
- poj1966Cable TV Network——无向图最小割(最大流)
题目:http://poj.org/problem?id=1966 把一个点拆成入点和出点,之间连一条边权为1的边,跑最大流即最小割: 原始的边权赋成inf防割: 枚举源点和汇点,直接相邻的两个点不必 ...
- 希尔排序(java)
希尔排序是对直接插入排序的一种优化,基本思想是把待排序的数据元素分成若干个小组,对同一小组内的数据元素用直接插入法排序:小组的个数逐次缩小:当完成了所有数据元素都在一个组内的排序后排序过程结束.希尔排 ...
- 3.12-3.16 Hbase集成hive、sqoop、hue
一.Hbase集成hive https://cwiki.apache.org/confluence/display/Hive/HBaseIntegration 1.说明 Hive与HBase整合在一起 ...