大家好,欢迎来到IT知识分享网。
1. 根据提供的某班级数学成绩单math.csv,计算并打印班级平均成绩
1) 使用with open万式读取文件数据:
2) 使用len()进行计算,要求输出结果为整数
with open(???)as file: score = file.???() #一次性续败数个文件,自动将文件内容分析成一个行的“字符串”列表。 listl = [int(i) for ??? in ???] # 使用序列解析式,计算班级平均成绩 print("班级平均成绩为:",int(sum(???)/len(???)))
答案如下:
with open('math.csv') as file: score = file.readlines() list1 = [int(i.strip()) for i in score] print("班级平均成绩为:",int(sum(list1)/len(list1)))
2. 编写程序,要求使用ASCI码转换字符串大小写,对输入的字符参数进行大小写转换,即输入小写内容,输出大写;输入大写则输出小写内容;其他字符不变;
ord():将字符转化成整数值,参数是长度为1的字符串,简称字符。当参数为8比特的字符串时,返回该字节的值。例如,ord(a”)返回整形数值97。
import sys msg="qingQIAO_HighSchool" def my_function(???): for i in msg: if 97 <= ??? <= 122: # 对小写字母数值判断 upper_num = ??? - 32 # 转换得到大写字母数值 print(chr(upper_num),end="") # 通过数值返回大写字母并打印 elif ??? : # 对大写字母数值判断,转换成小写字母 ??? ??? else: print(i,end="") # 其他字符不变直接打印 print("转换后的字符串为:",end="") my_function(???)
答案如下:
import sys msg="qingQIAO_HighSchool" def my_function(msg): for i in msg: if 97 <= ord(i) <= 122: # 对小写字母数值判断 upper_num = ord(i) - 32 # 转换得到大写字母数值 print(chr(upper_num),end="") # 通过数值返回大写字母并打印 elif 65 <= ord(i) <= 90 : # 对大写字母数值判断,转换成小写字母 lower_num = ord(i) + 32 print(chr(lower_num),end="") else: print(i,end="") # 其他字符不变直接打印 print("转换后的字符串为:",end="") my_function(msg)
3. 计算机中IP地址是32位二进制数字组成的数字序列,
常用的表示方法是将二进制数字从末尾往前每4个二进制数字作为一个字节转换成10进制数字进行表示,
因此平时常见的IP表示为12个阿拉伯数字,每3个数字为一组,组与组之间用英文句点“.”来分隔,例如192.168.1.7。
编程进制转换程序代码,要求可以对输入的IP地址进行二进制转换并输出结果,例如输入192.168.1.7,输出为“0”;
1)为变量ip地址进行赋值;
2)对ip地址数据进行切分,随后对切分后的数据进行二进制转换;
3)要求IP地址中每组数值转换后长度为8,长度不足部分左侧补0,推荐使用内置函数补齐字符串;
4)输出结果忽略二进制前缀,连接每组数据,最后输出结果长度为32位;
import sys ip = "172.38.56.2" # 得到IP地址 list1 = ip.???('.') # 指定分隔符对字符串进行切片 list2 = [] # 空列表 for num in list1: num = ??? # 将切分后的数据转换成数值类型并转换为二进制 num = num[2:] # 去掉二进制结果中前缀 list2.append(???) # 长度为8 ,不足补0,往空列表追加新元素 str = ''.join(list2) # 连接列表中所有元素,形成新的字符串 print("转换成二进制结果为:",???) # 打印字符串,即最后的32位二进制IP地址
答案如下:
import sys ip = "172.38.56.2" # 得到IP地址 list1 = ip.split('.') # 指定分隔符对字符串进行切片 list2 = [] # 空列表 for num in list1: num = bin(int(num)) # 将切分后的数据转换成数值类型并转换为二进制 num = num[2:] # 去掉二进制结果中前缀 list2.append("0"*(8-len(num))+num) # 长度为8 ,不足补0,往空列表追加新元素 str = ''.join(list2) # 连接列表中所有元素,形成新的字符串 print("转换成二进制结果为:",str) # 打印字符串,即最后的32位二进制IP地址
4.已知上网流量1GB=1024MB,19元包月套餐中通用流量为15G若超出流量按照0.29元/MB计,不足1M的按照1M算,本月流量已超1.25G,求本月总账单并打印。
import math MB = math.ceil(???) #计算超出的流量,向上取整 money = ??? #计算费用 print("本月账单为:",???,"元")
答案如下:
import math MB = math.ceil(1.25*1024) #计算超出的流量,向上取整 money = MB*0.29+19 #计算费用 print("本月账单为:","%.2f"%money,"元")
5. 编写程序满足如下需求:
定义一个整数n,计算该整数的12次方,并输出结果。
要求调用python内置函数进行次方计算
import sys import math ??? # 定义一个变量 值为8 num = int(math.pow(???)) # 使用内置函数计算多次方 print("8的12次方是:",num)
import sys import math n = 8 # 定义一个变量 值为8 num = int(math.pow(n,12)) #使用内置函数计算多次方 print("8的12次方是:",num)
6. 编写程序,定义一个整数年份,判断对应整数年份是否为闰年并输出结果,例如输入2018,返回“2018年不是闺年”,输入2000,返回“2000年是闺年”。
1) 闺年判定方法:能被400整除,或者被4整除,但不能被100整除;
2)使用format格式进行字符串格式化输出;
3) 结果参考上述示例,注意格式展示。
import sys year = 2100 if (year % 4) == 0: if (year % 100) == 0: if (year % 400) == 0: ??? else: ??? else: ??? else: ???
import sys year = 2100 if (year % 4) == 0: if (year % 100) == 0: if (year % 400) == 0: print("{}年是闰年".format(year)) else: print("{}年不是闰年".format(year)) else: print("{}年是闰年".format(year)) else: print("{}年不是闰年".format(year))
7. 现有成绩分级,成绩小于60分为不及格,大于80分为优秀,其他为良好,要求根据学生成绩变量score为78分,打印成绩等级。
score = 78 print(score,"分所在成绩等级为:",end="") if score ??? : if score ??? : ??? else: ??? else: ???
答案如下:
score = 78 print(score,"分所在成绩等级为:",end="") if score >=60 : if score <=80 : print(score,"分所在成绩等级为:良好",end="") else: print(score,"分所在成绩等级为:优秀",end="") else: print(score,"分所在成绩等级为:不及格",end="")
8.区间求和
编程求和程序,要求根据输入的参数区间值a,b,计算两者之间的所有奇数之和。
(代码所需要填的空记不太清了…)
import sys a = 384 # 前区间 b = 509 # 后区间 sum = 0 if a <= b : while a <= b: if ???: # 判断a是否为奇数 ??? # 奇数相加 a += 1 print("数据[",a,",",b,"]之间奇数之和为",???) # 打印最后的奇数和 else : print("参数区间错误") # 小在前大在后
import sys a = 384 # 前区间 b = 509 # 后区间 sum = 0 if a <= b : while a <= b: if a%2 == 1: # 判断a是否为奇数 sum = sum + a # 奇数相加 a += 1 print("数据[",a,",",b,"]之间奇数之和为",sum) # 打印最后的奇数和 else : print("参数区间错误") # 小在前大在后
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/139607.html