总结一些基础学习的简单题目
1.0x4DC0 是一个十六进制数,它对应的 Unicode 编码是中国古老的《易经》六十四卦的第一卦,请输出第 51 卦(震卦)对应的 Unicode 编码的二进制、十进制、八进制和十六进制格式。
参考代码:
print("二进制{0:b}、十进制{0}、八进制{0:o}、十六进制{0:x}".format(0x4DC0+50))
2.列表 ls 中存储了我国 39 所 985 高校所对应的学校类型,请以这个列表为数据变量,完善 Python 代码,统计输出各类型的数量。
ls = [“综合”, “理工”, “综合”, “综合”, “综合”, “综合”, “综合”, “综合”, “综合”, “综合”,
“师范”, “理工”, “综合”, “理工”, “综合”, “综合”, “综合”, “综合”, “综合”,“理工”,
“理工”, “理工”, “理工”, “师范”, “综合”, “农林”, “理工”, “综合”, “理工”, “理工”,
“理工”, “综合”, “理工”, “综合”, “综合”, “理工”, “农林”, “民族”, “军事”]
参考代码:
ls = ["综合", "理工", "综合", "综合", "综合", "综合", "综合", "综合", \
"综合", "综合", "师范", "理工", "综合", "理工", "综合", "综合", \
"综合", "综合", "综合", "理工", "理工", "理工", "理工", "师范", \
"综合", "农林", "理工", "综合", "理工", "理工", "理工", "综合", \
"理工", "综合", "综合", "理工", "农林", "民族", "军事"]
d = {
}
for word in ls:
d[word] = d.get(word, 0) + 1
for k in d:
print("{}:{}".format(k, d[k]))
3.以论语中一句话"学而时习之,不亦说乎?有朋自远方来,不亦乐乎?人不知而不愠,不亦君子乎?"作为字符串变量 s,补充程序,分别输出字符串 s 中汉字和标点符号的个数。
参考代码:
s = "学而时习之,不亦说乎?有朋自远方来,不亦乐乎?人不知而不愠,不亦君子乎?"
n = 0 # 汉字个数
m = 0 # 标点符号个数
m = s.count(',') + s.count('?')
n = len(s) - m
print("字符数为{},标点符号数为{}。".format(n, m))
4.使用程序计算整数 N 到整数 N+100 之间所有奇数的数值和,不包含 N+100,并将结果输出。整数 N 由用户给出,判断输入异常。
参考代码:
N = input("请输入一个整数: ")
s = 0
for i in range(eval(N), eval(N)+100):
if i%2 == 1:
s += i
print(s)
5.经常会有要求用户输入整数的计算需求,但用户未必一定输入整数。为了提高用户体验,编写 getInput() 函数处理这样的情况。如果用户输入整数,则直接输出整数并退出,如果用户输入的不是整数,则要求用户重新输入,直至用户输入整数为止。
参考代码:
def getInput():
try:
txt = input() # "请输入整数: "
while eval(txt) != int(txt):
txt = input() # "请输入整数: "
except:
return getInput()
return eval(txt)
print(getInput())
6.根据斐波那契数列的定义,F(0)=0,F(1)=1, F(n)=F(n–1)+F(n–2)(n≥2),输出不大于 100 的序列元素。
参考代码:
a, b = 0, 1
while a<=100:
print(a, end=',')
a, b = b, a + b
(1)建立字典 d,包含内容是:“数学”:101, “语文”:202, “英语”:203, “物理”:204, “生物”:206。
(2)向字典中添加键值对"化学":205。
(3)修改"数学"对应的值为 201。
(4)删除"生物"对应的键值对。
(5)打印字典 d 全部信息:
参考代码:
d = {
"数学":101, "语文":202, "英语":203, "物理":204, "生物":206}
d["化学"] = 205
d["数学"] = 201
del d["生物"]
for key in d:
print("{}:{}".format(d[key], key))
8.以 123 为随机数种子,随机生成 10 个在 1 到 999(含)之间的随机数,以逗号分隔,打印输出,请补充横线处代码。
参考代码:
import random
random.seed(123)
for i in range(10):
print(random.randint(1,999), end=",")
9 .a = [[1,2,3], [4,5,6], [7,8,9]] b = [3,6,9] ,使得程序能够计算 a 中各元素与 b 逐项乘积的累加和。
参考代码:
a = [[1,2,3], [4,5,6], [7,8,9]]
b = [3,6,9]
s = 0
for c in a:
for j in range(3):
s += c[j]*b[j]
print(s)
10.编写程序,获得用户输入的数值 M 和 N,求 M 和 N 的最大公约数。
参考代码:
def GreatCommonDivisor(a,b):
if a > b:
a,b = b,a
r = 1
while r != 0:
r = a % b
a = b
b = r
return a
m = eval(input())
n = eval(input())
print(GreatCommonDivisor(m,n))