周测试题

自测一卷

1.你所使⽤过的⽂本编辑器有哪些,其中Typora有何特点并简单列举⼏个语法功能

  • 用过的文本编辑器:Windows自带的记事本、Word、typora

  • Typora是一款实用易操作的Markdown语法编辑软件。其特点是:
      1、支持中文;
      2、跨平台,支持windows,mac,Linux;
      3、支持数学公式输入,图片插入;
      4、极其简洁,无多余功能;
      5、界面所见即所得。

  • typora语法功能举例:

1、标题系列
井号+空格接文本
# 文本

2、小标题
无序标题:星号加空格接文本
* 文本

3、语言环境
​```+编程语言,`为英文输入法下ESC下面的键
print(hello world)

4、表格
使用管道符分割表格字段信息

|姓名|性别|年龄|

5、英文环境下中括号里面写toc,括号外回车,自动生成目录。

6、表情
空格+:表情英文:

7、查看源码
快捷键Ctrl+?

2.什么是编程语⾔,编程的本质是什么

编程语言实际上就是人与计算机交流使用的语言,编程就是我们将自己的思维逻辑和想法用计算机能理解的语言记录下来的过程。编程最后得到的就是一个个文件。

3.计算机五⼤组成部分及各⾃主要功能

控制器:控制器是计算机的指挥系统,控制计算机各硬件的工作。

运算器:运算器在计算机中负责数学运算(计算)和逻辑运算(判断)。

控制器+运算器=CPU(中央处理器)

存储器(存取数据):分为内存和外存,内存基于电工作,读取数据速度快,断电数据会丢失;外存有实际硬件不基于电工作,可永久保存数据,但读取数据的速度慢。

输入设备:是往电脑里录入数据(给电脑传递信息)的硬件,如鼠标、键盘。

输出设备:

输出设备是展示电脑数据(向外界传递信息)的硬件,如显示屏、音响。

4.计算机三⼤核⼼硬件及详述三者⼯作关系

  • CPU:计算机中真正干活的人,没有CPU的参与,程序将无法运行。

  • 内存:内存与CPU是好搭档,读取数据的速度很快。

  • 硬盘:硬盘是计算机存储数据的地方。

解析:当下载软件时,软件是被下载至硬盘了。过程是通过CPU将软件先放到内存,然后再通过内存转移到硬盘;但是当打开软件时,软件数据是内存读取的。直到CPU通过内存获取到程序指令并执行后,软件才得以运行。这一过程充分利用了内存读取速度快和硬盘能够永久保存数据的两个优势,且体现了三大核心硬件的作用及运作流程。

5.简述计算机底层存储数据原理及编程语⾔发展史、分类

  • 当下载软件时,软件是被下载至硬盘了。过程是通过CPU将软件先放到内存,然后再通过内存转移到硬盘。
  • 编程语言分为机器语言,汇编语言,高级语言三大类。首先是直接用二进制指令编写程序的机器语言,机器语言学习难度大,开发效率极低;之后是在机器语言上进阶的汇编语言,使用英文字符代替二进制数编写程序,但与机器语言一样依旧是直接操作硬件,复杂程度及学习门槛高;最后是高级语言,使用人类能读懂的字符与计算机沟通,大大降低了学习门槛,提高了开发效率。

6.python解释器版本特点,如何实现多版本共存

  • python解释器器版本特点:
    Python2可以直接写print 输出的东西 或者print(结果)
    Python3只能print(结果)
    Python2中raw_input获取用户的原始输入,他还有input函数
    Python3只有input,功能和Python2中raw_input一样
    实现多版本共存:
    创建一个python.exe的快捷方式,然后改成相应的名字

  • 复制解释器中的python.exe文件,然后重新命名复制文件(如python27.exe),跟其他版本不同名字。

7.常⻅的编程软件有哪些,你更倾向于哪个简单说说缘由

  • 常用的编程软件有:Visual studio、PhpStorm、Notepad++、WebStrom、Sublime Text、EditPlus 、pycharm等。
  • 倾向于pycharm,因为它适合新手学习python使用。

8.什么是注释,python中如何编写注释

注释是对编写代码的解释和说明,方便他人了解每一步代码在做什么,也能够帮助自己编写代码。单行注释在解释说明文字前加警号(#),此方式在pycharm中有快捷键 (ctrl + ?);

多行注释

方法1:回车键左边那个键英文输入法下连续按三下

方法2:回车键左边那个键英文输入法下+shift 连续按三下

9.什么是变量、如何定义变量、阐述内部本质

变量是用来记录变化可能会经常改变的事物状态,如:color = 'red',color就是变量。

变量名=值,等号用来给变量赋值,等号左边是变量名,右边是变量的值。变量赋值后才会被创建,也才能被使用。

10.变量的命名规范与命名⻛格

变量命名规范:中文、汉语拼音可以用来做变量名但不建议使用,变量名只能出现字母、数字、下划线,尽量见名知意,且不能与关键字冲突。

命名风格:下划线式、大驼峰及小驼峰

同个编程语言尽量固定使用一种,不要随意切换。

11.什么是垃圾数据,简单聊聊python中的垃圾回收机制

垃圾数据是在内存中没有任何变量名指向的数据,垃圾回收机制是Python解释器自带的一种机制,专门用来回收不可用的变量值所占用的内存空间。

12.列举你所知道的python基本数据类型及各⾃表现形式

基本数据类型
整型int(整数)
适用于年龄,人数,年份这种用整数形容的数据

浮点型float(小数点)
适用于可以用小数形容的数据,如身高,体重,薪资

字符串str
字符串代表着文本类型的数据,引号引起来的部分都是字符串,字符串有多种定义方式,单引号'',双引号"",单三引号''' ''',双三引号""" """,主要是为了避免字符串中编写文本时的冲突。

列表list
列表可以储存多个数据,并且方便取其中某个数据
list用中括号括起来,可以索引取值,从0开始由左到右索引。

字典dict
字典数据放在大括号里,可以存储任意类型对象。以kv键值对的形式存储,键值中间冒号分隔,每个键值对中间逗号分隔

布尔值bool
布尔值主要用于流程控制中,分为true和false两种,0,none,单引号,空的中括号和大括号都表示false,其余的都是true。布尔值命名推荐用is 开头,有表判断的意思。

元祖tuple
与list唯一不同的是用小括号代替中括号,是一种有序的列表,可以存放多个数据类型,如果只有一个数据值也建议加上逗号。

集合set
集合是一个无序不重复元素的集,用大括号框定元素,逗号分隔,数据值不是键值对。创建空集合用()而不是{},因为{}创建的是空字典。

代码实战

1.编写⽤户识别程序

要求:可循环根据⽤户输⼊的姓名不同输出不同的身份信息

添加程序结束功能(如⽤户输⼊字⺟q直接结束识别程序)

jason:扫地僧 tony:洗碗⼯ kevin:服务员 jack:配菜员 其他:未识别

# b=1
# while b:
#
#     a = input('请输入你的用户名,输入q结束>>>:')
#     if a=='jason':
#         print('扫地僧')
#     elif a == 'q':
#         print('程序结束')
#         break
#     elif a == 'tony':
#         print('洗碗工')
#     elif a == 'Kevin':
#         print('服务员')
#     elif a == 'jack':
#         print('配菜员')
#     else:
#         print ('未识别')
# user_data = {'jason': '扫地僧', 'tony': '洗碗⼯', 'kevin': '服务员', 'jack': '配菜员', '其他': '未识别'}
# 
# while 1:
#     username = input('请输入你的用户名,输入q结束>>>:')
#     if username == 'q':
#         print('程序结束')
#         break
#     elif username in user_data:
#         print(user_data[username])
#     else:
#         print('未识别')

2.利⽤for循环及range⽅法⾃动⽣成链家⼆⼿房多⻚数据⽹址(⼗条以

上即可)

初始⽹址:https://sh.lianjia.com/ershoufang/

# https://sh.lianjia.com/ershoufang/
# https://sh.lianjia.com/ershoufang/pg2/
# https://sh.lianjia.com/ershoufang/pg3/
# base_url = 'https://sh.lianjia.com/ershoufang/pg%s/'
# for i in range(1, 11):
#     if i==1:
#         print('https://sh.lianjia.com/ershoufang/')
#     else:
#         print(base_url % i)


# for i in range(1, 11):
#     if i==1:
#         print('https://sh.lianjia.com/ershoufang/')
#     else:
#         print(f'https://sh.lianjia.com/ershoufang/pg{i}/')

3.编写⽤户登录程序

温馨提示:

⽤户名与密码来源于字符串source_data = 'jason|123'

想办法从中拆分出⽤户名和密码⽤于后续账户信息⽐对

普通要求:

1.验证失败情况下可⼀直循环验证 成功则直接退出

source_data = 'jason|123'
# while True:
#     username = input('请输入你的用户名>>>:').strip()
#     password = input('请输入你的密码>>>:').strip()
#     name,pwd=source_data.split('|')
#     if username ==name and password == pwd:
#         print('登录成功')
#         break
#     else:
#         print('用户名或密码错误')

拔⾼练习:

1.只允许三次失败机会

2.登录成功后进⼊内层循环,⽤户输⼊任何指令利⽤格式化输出

打印正在执⾏该⽤户指令即可,直到⽤户输⼊字⺟q退出内层循环

count = 1
# source_data = 'jason|123'
# while count:
#     if count == 4:
#         print('你已经尝试三次了,下次再试吧')
#         break
#     username = input('请输入你的用户名>>>:').strip()
#     password = input('请输入你的密码>>>:').strip()
#     name, pwd = source_data.split('|')
#     if username == name and password == pwd:
#         print('登录成功')
#         while 1:
#             cmd = input('请输入你的指令,输入q结束程序>>>:').strip()
# 
#             print(f'你输入的指令{cmd}')
#             if cmd =='q':
#                 print ('程序结束')
#                 break
#     else:
#         print('用户名或密码错误')
#   
#     count +=1
posted @ 2022-10-16 23:43  知了了了了  阅读(60)  评论(0)    收藏  举报