# 部分作业习题答案
# day01 作业答案
简述硬件 & 操作系统 & 软件(应用系统)之间的关系。
计算机是由多个硬件组成,例如:CPU、硬盘、内存、网卡、主板等。 操作系统则是安装在计算机上用于协调各硬件进行配合工作的,他将用户的一些行为转化为计算机能够识别的命令,并协调各个硬件配合完成相关命令。 软件,是由程序员开发并安装在操作系统的程序(本质上是一大堆的代码),例如:微信、QQ、金山毒霸等。
列举常见的操作系统都有哪些。
常见的操作系统有三类: - win:win7、win10、xp 等 - linux:centos、ubuntu、redhat 等。 - mac:Catalina、Mojave、Sierra 等。
简述编译器和解释器的区别和作用。
编译器和解释器的作用是将各编程语言的代码进行翻译,从而使得计算机能够识别并执行。 编译器,全文翻译,将代码编译成`临时文件`,再执行临时文件。 解释器,实施翻译,对代码实行边解释边执行。
编程语言进行分类
解释的角度:编译型和解释性。 高低的角度:高级编程语言和低级编程语言。
Python解释器的种类有哪些?
CPython、Jython、IronPython、pypy等
CPython解释器的版本有哪些?你现在用的是哪个版本?
2.x和3.x,目前课堂上使用的是最新的3.9.0版本。
系统环境变量的作用是什么?
在将某个目录添加至环境变量后,如果在终端想要去运行此目录下的文件,则只需要输入文件名即可(无需再写前缀),系统会自动读取环境变量中的路径并自动拼接。
Python和Pycharm的区别是什么?
Python是解释器,用于将Python解释成计算机能够识别的命令。 Pycharm是IDE(类似编辑器),用于方便快速的编写Python代码并实现运行Python代码的一个工具。
# day02 作业答案
谈谈你了解的编码以及为什么会出现乱码的现象?
编码相当于是一个`密码本`,其中存储着文字和01010的对应关系。 乱码的出现时因为文件的存储方式和打开方式不一致导致。另外,如何数据丢失也可能会造成乱码。 假如: 武,对应存储的是:100100001000000111。如果文件中的内容丢失只剩下100100001000000,则读取时候就可能出现乱码。
Python解释器默认编码是什么?如何修改?
Python解释器默认编码:utf-8 在文件的顶部通过设置: # -*- coding:编码 -*- 实现修改。
用print打印出下面内容:
⽂能提笔安天下, 武能上⻢定乾坤. ⼼存谋略何⼈胜, 古今英雄唯是君。
print("⽂能提笔安天下,") print("武能上⻢定乾坤.") print("⼼存谋略何⼈胜,") print("古今英雄唯是君。")
text = """ ⽂能提笔安天下, 武能上⻢定乾坤. ⼼存谋略何⼈胜, 古今英雄唯是君。 """ print(text)
变量名的命名规范和建议?
三条规范(必须遵循,否则定义变量会报错) - 变量名只能由 字母、数字、下划线 组成。 - 变量名不能以数字开头。 - 变量名不能是Python内置关键字 二条建议(遵循可以显得更加专业,不遵循也可以正常运行不报错) - 下划线命名法,多个单词表示的变量名用下划线连接(均小写) - 见名知意,通过阅读变量名就能知道此变量的含义。
如下那个变量名是正确的?
name = '武沛齐' _ = 'alex' _9 = "老男孩" 9name = "宝浪" # 错误 oldboy(edu = 666 # 错误
设定一个理想数字比如:66,让用户输入数字,如果比66大,则显示猜测的结果大了;如果比66小,则显示猜测的结果小了;只有等于66,显示猜测结果正确。
num = input("请输入数字") data = int(num) if data > 66: print("大了") elif data < 66: print("小了") else: print("正确")
提示⽤户输入 "爸爸" ,判断⽤户输入的对不对。如果对, 提示真聪明, 如果不对, 提示你是傻逼么。
text = input("请输入内容") if text == "爸爸": print("真聪明") else: print("你是傻逼么")
写程序,成绩有ABCDE5个等级,与分数的对应关系如下.
A 90-100 B 80-89 C 60-79 D 40-59 E 0-39
要求用户输入0-100的数字后,你能正确打印他的对应成绩等级.
score = input("请输入分数") data = int(score) if data >= 90 and data <= 100: print("A") elif data >= 80 and data <90: print("B") elif data >= 60 and data <80: print("C") elif data >= 40 and data <60: print("D") elif data >= 0 and data <40: print("E") else: print("输入错误")
score = input("请输入分数") data = int(score) if 90 <= data <= 100: print("A") elif 80 <= data < 90: print("B") elif 60 <= data < 80: print("C") elif 40 <= data < 60: print("D") elif 0 <= data < 40: print("E") else: print("输入错误")
# day03 作业答案
判断下列逻辑语句的True,False
1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6 的结果为:True not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6 的结果为:False
求出下列逻辑语句的值。
8 or 3 and 4 or 2 and 0 or 9 and 7 的结果为:8 0 or 2 and 3 and 4 or 6 and 0 or 3 的结果为:4
下列结果是什么?
6 or 2 > 1 的结果为:6 3 or 2 > 1 的结果为:3 0 or 5 < 4 的结果为:False 5 < 4 or 3 的结果为:3 2 > 1 or 6 的结果为:True 3 and 2 > 1 的结果为:True 0 and 3 > 1 的结果为:0 2 > 1 and 3 的结果为:3 3 > 1 and 0 的结果为:0 3 > 1 and 2 or 2 < 3 and 3 and 4 or 3 > 2 的结果为:2
实现用户登录系统,并且要支持连续三次输错之后直接退出,并且在每次输错误时显示剩余错误次数(提示:使⽤字符串格式化)。
""" count = 0 while count < 3: count += 1 user = input("请输入用户名:") pwd = input("请输入密码:") if user == "wupeiqi" and pwd == "123": print("成功") break else: message = "用户名或者密码错误,剩余错误次数为{}次".format(3 - count) print(message) """ """ count = 3 while count > 0: count -= 1 user = input("请输入用户名:") pwd = input("请输入密码:") if user == "wupeiqi" and pwd == "123": print("成功") break else: message = "用户名或者密码错误,剩余错误次数为{}次".format(count) print(message) """
猜年龄游戏 要求:允许用户最多尝试3次,3次都没猜对的话,就直接退出,如果猜对了,打印恭喜信息并退出。
count = 0 while count < 3: count += 1 age = input("请输入年龄:") age = int(age) if age == 73: print("恭喜你猜对了") break else: print("猜错了") print("程序结束")
猜年龄游戏升级版 要求:允许用户最多尝试3次,每尝试3次后,如果还没猜对,就问用户是否还想继续玩,如果回答Y,就继续让其猜3次,以此往复,如果回答N,就退出程序,如何猜对了,就直接退出。
count = 0 while count < 3: count += 1 age = input("请输入年龄:") age = int(age) if age == 73: print("恭喜你猜对了") break else: print("猜错了") if count == 3: choice = input("是否想继续玩(Y/N)?") if choice == "N": break elif choice == "Y": count = 0 continue else: print("内容输入错误") break print("程序结束")