Python简答题编程题

这篇博客主要涵盖了Python的基础知识和编程题,包括简答题和编程题两部分。简答题涉及列表、元组、作用域、函数定义、XPath爬虫、循环控制等概念。编程题则包括字符统计、数字组合、猴子吃桃问题等挑战。此外,还讨论了机器语言、汇编语言、高级语言的定义,以及文本文件和二进制文件的区别。
摘要由CSDN通过智能技术生成

简答题

1.列表和元组之间的区别是什么?字典和列表的主要区别是什么?
  • 字符串:不可变、有序序列;可以索引切片;引号界定;

    ​ 单一字符的有序组合。例如,str=“python”

  • 列表:可变、有序序列;可以索引切片;[ ]界定;

    ​ 长度和内容都是可变的,可自由对列表中数据项进行增加、删除或替换。

    ​ 没有长度限制,元素类型可以不同,使用非常灵活。例如ls = [425, “BIT”, [10, “CS”], 425]

  • 元组:不可变、有序序列;可以索引切片;( )界定;

    ​ 包含0个或多个数据项的不可变序列类型。元组生成后是固定的,其中任何数据项不能替换或删除。

    ​ 例如,color = (“red”, 0x001100, “blue”, creature)

  • 集合:可变、无序;不可以索引切片;{ }界定;

    ​ 包含0个或多个数据项的无序组合。例如S = {425, “BIT”, (10, “CS”), 424}

  • 字典:可变、无序映射;不可以索引切片;{ }界定;

    ​ 包含0个或多个键值对的集合。

    ​ 字典是一个键值对的集合,该集合以键为索引,一个键信息只对应一个值信息;

    ​ key不重复,不可变; value可变

    ​ 例如,shoudu={“中国”:“北京”, “美国”:“华盛顿”, “法国”:“巴黎”}

2.简述list和tuple的区别?

相同点:都是有序集合

异同点:1.list是可变数据类型,tuple是不可变数据类型

​ 2.定义方式:list[] tuple()

​ 3.list有append(),insert(),extend();pop(),remove(),clear()等增删方法;tuple没有

3.什么是全局作用域?什么是局部作用域?

- 作用域——变量起作用的范围

- 全局作用域——变量在整个程序中都有效。

- 局部作用域——变量只在代码块中有效,比如函数内部。

4.简述定义函数的规则?

def 函数名称([参数]):

[函数注释]

[函数体]#创建语法

若有返回值,则用return返回;若无返回值,无需return,但是默认依然返回值:None

5.简述如何使用xpath进行爬虫?
  1. 首先导入需要使用模块和库(lxml和requests
  2. 分析目标网站,拿到正确的url网址,发送网络请求
  3. 接受网络请求返回的数据,使用xpath语法解析网页内容
  4. 数据处理分析
6.请给出break和continue的定义和区别。

- break:退出整个循环,执行循环体外的语句;

是结束整个循环过程,不再判断执行循环的条件是否成立

- continue:退出本次循环,进入下一轮循环;

只结束本次循环,而不终止整个循环的执行

7.声明变量需要注意事项有哪些。

以字母、数字、下划线组成,不能以数字开头 ,大小写敏感,不能使用系统关键字

8. __new__和__init__的区别?
①__new__是一个静态方法,而__init__是一个实例方法.
②创建一个新实例时调用__new__,初始化一个实例时用__init__.
③__new__方法会返回一个创建的实例,而__init__什么都不返回.
④只有在__new__返回一个cls的实例时,后面的__init__才能被调用.
9.read,readline和readlines之间的区别?**
  • read 读取整个文件
  • readline 每次读取一行内容,使用生成器方法
  • readlines 一次性读取所有行内容,到一个迭代器,并按行返回形成一个列表,以供遍历
10.简单解释Python基于值的自动内存管理方式?
  • 基于值:在Python中可以为不同变量赋相同的值,这个值在内存中只有一份,多个变量指向同一个内存地址;
  • 自动内存管理功能:会自动跟踪内存中所有的值,对于没有任何变量指向的值,Python自动将其删除。
11.异常和错误有什么区别?
  • 异常是指因为程序执行过程中出错而在正常控制流以外采取的行为。

    严格来说,语法错误和逻辑错误不属于异常,但有些语法错误往往会导致异常。

    例如由于大小写拼写错误而访问不存在的对象,或者试图访问不存在的文件,等等。

  • 错误是语法或是逻辑上的。当检测到一个错误时,解释器会指出当前流已经无法继续执行下去,这个时候就会出现异常。

12.用两个元素之间有对应关系的list构造一个dict
names = ["zyh","xp"]
ages = [20, 23]
result = dict(zip(names,ages))
print(result)

编程题

1.输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
def tongji(str):
    alpha = 0	# 统计字母
    space = 0	 # 统计空格
    digit = 0
  • 4
    点赞
  • 92
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值