资讯 小学 初中 高中 语言 会计职称 学历提升 法考 计算机考试 医护考试 建工考试 教育百科
栏目分类:
子分类:
返回
空麓网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
空麓网 > 计算机考试 > 软件开发 > 后端开发 > Python

专项练习python(一)NKW

Python 更新时间: 发布时间: 计算机考试归档 最新发布

专项练习python(一)NKW

专项练习python(一)
      • 第一题:考察python中的内置函数map( )和list( )
      • 第二题:考察python中字符串的使用及字符串内建函数
      • 第三题: 数组的元素是否改变的问题
      • 第四题 :关于计算机基本原理
        • 如下
          • 1.数据结构中的堆栈和内存中的堆栈
          • 2.python3中的int取值范围(64位机子)

第一题:考察python中的内置函数map( )和list( )

考察python3中内置函数map函数的用法

map函数:

  • 描述:它会根据提供的函数对指定序列做映射
  • 语法:map(function,iterable,…)
  • 参数:——function是函数
    ——iterable是一个或多个序列
  • 返回值:一个迭代器。
    迭代器并非是值一个列表或字典,而是一个地址,类似于指针,它是用来访问容器(保存元素的数据结构)中保存的元素;实际上,数组范围内的指针也是一种迭代器

注意:之后记得总结一下迭代器及其作用

  • 实例
def square(x):
        return x ** 2
map(square,[1,2,3,4,5]) #计算列表总各个元素的平方,返回迭代器
#迭代器 
list(map(square,[1,2,3,4,5])) #使用list()将迭代器所指的东西转化为列表「1,4,9,16,25」
list(map(lambda x:x ** 2,[1,2,3,4,5]))

第二题:考察python中字符串的使用及字符串内建函数

center(width,fillchar)

字符串

  • 描述:python中的字符串是它最常用的数据类型,我们一般用(“ ” 或’ ')来创建字符串,不需要先定义后赋值,直接为变量创建一个值就可以创建好字符串
var 1='HELLO,WORLD'
VAR 2="Runoob"

内建函数center(width,fillchar)
返回值:一个指定宽度为width的字符串,fillchar为填充的字符,默认为空格,代码中会给出用什么填充

第三题: 数组的元素是否改变的问题


本题:a经过循环操作后,形成了一个二维数组;b是一个新的列表,其实也是一个新的二维数组。在python中, 如果用一个列表a乘一个数字会得到一个新的列表b, 这个新的列表b的元素是a的元素重复

a=[['1','2']for i in range(2)]
b=[['1','2']]*2
#a[0][1]='3'
#b[0][0]='4'
print(a,b)

结果 :

a=[['1','2']for i in range(2)]
b=[['1','2']]*2
a[0][1]='3'
b[0][0]='4'
print(a,b)

结果 :

b变量的b「0」和b「1」其实是一个东西,在同一块地址上。因此修改b[0][0]的时候,b[1][0]也会改变,可以从以下代码看出:

#打印b[0]与b[1]的id
print(id(b[0]))
print(id(b[1]))
print(id(b[0][0]))
print(id(b[1][0]))

结果:

第四题 :关于计算机基本原理


第一个错:栈是从高地址向低地址增长,而堆是向高地址增长;

查看 1.数据结构中的堆栈和内存中的堆栈,如下

第二个:

去查查,总结一下函数调用,压栈的工作原理

第三个错:python3中int的取值范围

查看2.python3中的int取值范围(64位机子)

第四个正确

如下 1.数据结构中的堆栈和内存中的堆栈

数据结构中的堆栈:是一种数据结构,管理数据的容器。可以用来存放数据和地址。栈只能在栈顶进行操作,例如删除或插入

内存中的堆栈 : 是确切存在的物理结构,可以存放不同数据的内存空间

  • 内存中的栈,存放函数的函数值,局部变量,是由系统自动分配和释放的,是由高地址向低地址扩展的数据机构,是一段连续的内存区域,是对数据结构中的栈这种手段的实现。栈的顶地址和最大容量是系统预先设定好的,在程序编译时,它就是一个确定的常数,但注意并不是所有用到栈技术的区域都是栈区,虽然目前是这样,这是概念定义的准确性问题。

只要栈的剩余空间大于所申请空间,系统将为程序提供内存,否则将报异常提示栈溢出。

  • 内存中堆,一般用来动态分配内存的,它的实现跟操作系统和编译器有关,一般内存中的堆貌似是用链表实现的。
    在堆中,队列优先,先进先出。是一种向高地址扩展的数据结构,不连续的内存区域。

在操作系统中,堆一般是由程序员动态分配释放的,分配方式:操作系统有一个专门存储空闲地址的链表,当程序申请分配空间时,OS会遍历这个链表(遍历方向:低地址向高地址),找到第一个大于申请的空间的堆节点,并从空闲节点列表中删除该节点,把空间分配给程序,若找到的空间比申请的空间要大,系统会自动把多余的那部分重新放入空闲链表中。一般来说,操作系统会在内存的首地址处记录分配的空间大小,以便程序能够正确地释放该内存空间。堆的大小取决于计算机有效的虚拟内存。

2.python3中的int取值范围(64位机子)

int的范围*
python3:
  在32位机器上,整数的位数为32位,取值范围为-231~231-1;
  在64位系统上,整数的位数为64位,取值范围为-263~263-1;
python3:
  理论上长度是无限的(只要内存足够大)

转载请注明:文章转载自 http://www.konglu.com/
本文地址:http://www.konglu.com/it/917587.html
免责声明:

我们致力于保护作者版权,注重分享,被刊用文章【专项练习python(一)NKW】因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,转载此文是出于传递更多信息之目的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!

我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2023 成都空麓科技有限公司

ICP备案号:蜀ICP备2023000828号-2