赞
踩
选用适当的方法判断 0.9-0.3 和 0.6 是否相等
附加要求,是否能够用两行代码实现此功能。
a=input("请输入一个自然数:")
b=0
for i in a:
b=b+int(i)
print("该自然数各位之和:",b)
利用Python计算,结果保留两位小数:底面半径为66,高为24.2的圆柱体的体积和表面积。结果保留2位小数。(提示:round())
import math
r=float(input("请输入圆柱的底面半径:"))
h=float(input("请输入圆柱的高:"))
s=round(math.pi*r*r*2+2*math.pi*r*h,2)
v=round(math.pi*r*r*h,2)
print("圆柱的表面积为:",s)
print("圆柱的体积为:",v)
小明参加语文,数学和英语考试,输入小明的3门成绩(提示:字符串的.split()方法)
(1)输出3门成绩的总和、平均分、最高分和最低分。
s = input().split(',',2)
s = list(map(float, s))
total = sum(s)
ave = round(total / 3, 2)
maxs = max(s)
mins = min(s)
print("总成绩:", total)
print("平均成绩:", ave)
print("最高成绩:", maxs)
print("最低成绩:", mins)
(2)判断是否有成绩中是否有零分,并输出判断结果。
if 0 in s:
print("成绩中存在零分。")
else:
print("成绩中不存在零分。")
(3)如果三门课程以权重0.5,0.3和0.2计入总分,输出小明的最终总评成绩。
final = s[0] * 0.5 + s[1] * 0.3 + s[2] * 0.2
print("最终总评成绩为: ", final)
商店需要找钱给顾客,现在只有50元、5元和1元的人民币若干张。输入一个整数金额值,给出找钱的方案,假设人民币足够多,且优先使用面额大的钱币。
import math
m = int(input('Please input: '))
fifty = math.floor(m / 50)
five = math.floor(( m- fifty * 50) / 5)
one = math.floor(m - fifty * 50 - five*5)
print("找零方案:", fifty, five, one)
编写程序,输入一个自然数,输出它的二进制、八进制、十六进制表示形式。
x = input('Please input: ')
print("二进制:", bin(int(x)))
print("八进制:", oct(int(x)))
print("十六进制:", hex(int(x)))
某餐厅推出了优惠下午茶套餐活动。顾客可以以优惠的价格从给定的糕点和给定的饮料中各选一款组成套餐。已知,指定的糕点包括松饼(Muffins)、提拉米苏(Tiramisu)、芝士蛋糕(Cheese Cake)和三明治(Sandwich);指定的饮料包括红茶(Black tea,)、咖啡(Coffee)和橙汁(Orange Juice)。请问,可以搭配出哪些套餐供客户选择?请依次打印输出各种套餐。
a_list=['松饼','提拉米苏','芝士蛋糕','三明治']
b_list=['红茶','咖啡','橙汁']
for i in a_list:
for j in b_list:
c_list=(i,j)
print(c_list)
(1)字典
import random
x=[random.randint(0,101) for i in range(0,1000)]
d=dict()
print(x)
for ch in x:
d[ch]=d.get(ch,0)+1
print(ch,":",d[ch],end='\t')
(2)集合
import random
random_numbers = [random.randint(0,100) for _ in range(1000)]
number_counts = {}
for number in random_numbers:
number_counts[number] = number_counts.get(number,0)+1
for number, count in number_counts.items():
print(f"{number}:{count}")
listA=input('请输入若干整数:')
listB=input('请输入若干整数:')
d=dict(zip(listA,listB))
print(d)
str=input('请输入一个字符串:')
d=dict()
for ch in str:
d[ch]=d.get(ch,0)+1
print(max(d.items(),key=lambda item:item[1]))
小夏和小迪接到一个调研任务,需要按省份统计班级同学的籍贯分布情况。他们决定两人分头统计男生和女生的籍贯分布,最后再汇总结果。
已知小夏统计的女生籍贯分布是:dicGirls={'Jiangsu':3,'Zhejiang':2,'Jilin':1} ;小迪统计的男生籍贯分布是:dicBoys={'Jiangsu':8,'Zhejiang':5,'Shandong':5,'Anhui':4,'Fujian':2}。请编写程序将两人的调研结果合并而且输出。
dicGirls={'Jiangsu':3,'Zhejiang':2,'Jilin':1}
dicBoys={'Jiangsu':8,'Zhejiang':5,'Shandong':5,'Anhui':4,'Fujian':2}
dic=dicBoys.copy()
for i,j in dicGirls.items():
dic[i]=dic.get(i,0)+j
print(dic)
setA = set(input("输入集合A:").split())
setB = set(input("输入集合B:").split())
inter = setA & setB
union = setA | setB
diff = setA - setB
print("交集:", inter)
print("并集:", union)
print("差集:", diff)
d = {
"1":"a",
"2":"b",
"3":"c",
"4":"d",
"5":"e"
}
a=input("用户请输入键:")
if a in list(d.keys()):
print(a,d.get(a))
else:
print("输入的键不存在")
列表
x = list(range(11))
import random
random.shuffle(x)
print("随机生成列表",x)
y=sorted(x,reverse=True)
print("对x进行降序排列",y)
alist=[i for i in range(101) if i%3==0]
print(alist)
number = [23, 16, 18, 19, 76, 121, 33, 57, 80]
number_d = [n for n in number if n % 2 == 0]
print(number_d)
编写程序,用户输入一个列表和两个整数作为下标,然后用切片获取并输出介入两个下标之间的元素组成的子列表。例如,用户输入[1,2,3,4,5,6]和2,5后,程序输出[3,4,5,6]。
list = input("请输入一个列表:").split(",")
start = int(input("请输入开始下标:"))
end = int(input("请输入结束下标:"))
list = [int(num) for num in list]
list_c = list[start : end +1]
print("所选子列表为:", list_c)
输入一句英文句子,例如:the scenery along the should be and the mood at the view,输出其中最长的单词及长度。
sent=input("请输入一句英文:")
word=sent.split()
length=[len(x) for x in word]
lens=max(length)
print("句子中最长的单词:",format(word[length.index(lens)]))
print("该单词的长度:",lens)
xlist=eval(input("请输入第一个坐标:"))
ylist=eval(input("请输入第二个坐标:"))
dis=map(lambda xlist,ylist:abs(xlist-ylist),xlist,ylist)
z=sum(dis)
print("两点之间的曼哈顿距离:",z)
x=sum([2**i for i in range(64)])
print(x)
函数
1、判断奇数编写isOdd()函数,该函数应有一个整数参数,如果该参数为奇数,函数返回True,否则返回False。并编写主程序调用该函数进行测试。
def isOdd(n):
if n%2!=0:
return True
else:
return False
n=int(input('请输入一个整数'))
print(isOdd(n))
编写一个程序,在主程序中求1900 ~ 2020年中所有的闰年,每行输出5个年份。闰年即能被4整除但不能被100整除,或者能被400整除的年份。要求定义一个函数isLeapYear (year ),该函数用来判断某年是否为闰年,是闰年则函数返回True,否则返回False。并编写主程序调用该函数进行测试.
def isLeapYear (year):
if year%4==0 and year%100!=0 or year%400==0:
return True
else:
return False
count=0
for i in range(1900,2021):
x=isLeapYear(i)
if x:
print(i,end='\t')
count+=1
if count%5==0:
print()
def a(num):
if num<=1:
return False
for i in range(2,int(num ** 0.5) +1 ):
if num%i==0:
return False
else:
return True
num = int(input())
if a(num):
print(num,"是素数")
else:
print(num,"不是素数")
def tongji(str):
lst=[0,0,0,0]
for i in str:
if 'A'<=i<='Z':
lst[0]+=1
elif 'a'<=i<='z':
lst[1]+=1
elif '0'<=i<='9':
lst[2]+=1
else:
lst[3]+=1
atuple=tuple(lst)
return atuple
str=input('请输入一个字符串:')
print(tongji(str))
def max_sum(*args):
max_num= max(args)
sum_num= sum(args)
print("最大值为:", max_num)
print("所有整数和为:",sum_num)
max_sum(3,4,5,4,5,9,15,3)
利用lambda表达式和filter()函数实现按行输出列表[3, 5, -7, -1, 0, -9]中所有的负数。
lst=[3, 5, -7, -1, 0, -9]
print(list(filter(lambda x:x<0,lst)))
def resum(n):
r = 0
for item in n:
r += item
return r
number = [2,5,4,7,8,9]
print(resum(number))
8. 编写函数,接收任意多个实数,返回一个元组,其中第一个元素为所有参数的平均值,其他元素为所有参数中大于平均值的实数。
def fun(*a):
average=sum(a)/len(a)
list=[]
for i in a:
if i>average:
list.append(i)
tuple=(average,list)
return tuple
input('任意多实数:')
print(fun(4,5,6,7,9,0))
9.编写函数,接收包含n个整数的列表lst和一个整数k(0<=k<n)作为参数,返回新列表。处理规则为:将列表lst中下标k之前的元素逆序,下标k之后的元素逆序,下标K元素位置不变。
l=[12,3,18,1,2,8,10,11,-1,-2,9,7]
print(demo(l,5))
结果:[2, 1, 18, 3, 12, 8, 7, 9, -2, -1, 11, 10]
def demo(lst, k):
before = lst[:k]
after = lst[k+1:]
r1 = before[::-1]
r2 = after[::-1]
r = r1 + [lst[k]] + r2
return r
l = [12,3,18,1,2,8,10,11,-1,-2,9,7]
print(demo(l,5))
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。