Fork me on GitHub

day-03 作业

day-03 作业

  1. 简述执行Python程序的两种方式以及他们的优缺点:

    • 交互式
      • 优点:输入一行,解释一行,调试方便
      • 缺点:程序无法保存,关掉窗口就没了
    • 命令行式
      • 优点:程序可以永久保存
      • 缺点:调试麻烦
  2. 简述Python垃圾回收机制:

    当一个变量值的引用计数为0的时候,会触发垃圾回收机制,该变量值会被回收。

  3. 对于下述代码:

x = 10	# 10的引用计数加1为1
y = 10	# 10的引用计数加1为2
z = 10  # 10的引用计数加1为3
del y   # 10的引用计数减1为2

10的引用计数为多少?

​ 10的引用计数为: 2

x = 257	# x对应的变量值257的引用计数加1为1
y = x   # x对应的变量值257的引用计数加1为2
del x   # x对应的变量值257的引用计数减1为1
z = 257 # z对应的变量值257的引用计数加1为1

x对应的变量值257的引用计数为多少?

​ x对应的变量值257的引用计数为: 1

  1. 简述Python小整数池概念:

    ​ 为了避免因创建相同的值而重复申请内存空间所带来的效率问题, Python解释器会在启动时创建出小整数池,范围是[-5,256],该范围内的小整数对象是全局解释器范围内被重复使用,永远不会被垃圾回收机制回收。

  2. 对于x = 10,请用Python代码分别打印变量值、变量值内存地址和变量数据类型:

x = 10
print(x)		    # 打印变量值
print(id(x))		# 打印变量内存地址
print(type(x))		# 打印变量数据类型
  1. 对于下述代码:
x = 257
y = x
z = 257

请判断x、y、z的变量值是否相同?x、y、z的所在的内存地址是否相同?请用python代码阐述为什么?

通过运行结果可以知道,x、y、z的变量值是相同的,x、y的内存地址相同,但和z的内存地址不同:

x = 257:当将值257赋值给变量x的时候,计算机开辟了一块新的内存空间存储257,并将变量名x指向这个空间地址;

y = x : 此时是将已存在的x的值赋值给变量y,即将值257的内存地址再指向y,257的地址本身没有改变,所以x和y的值与内存地址相同;

z = 257 :直接将257赋值给一个新的变量,计算机会重新开辟一个内存空间去存储这个数值,再将z指向新的地址,所以虽然z和x、y的值相同,但是内存地址却是不一样的。

  1. 简述数字类型

    • 数字类型分为
      • 整型:表示整数
        • 定义方式:a = 10a = int(10)
        • 使用方法:加、减、乘、除、取余、取整、幂、逻辑比较
      • 浮点型:表示小数
        • 定义方式:b = 1.1b = float(1.1)
        • 使用方法:加、减、乘、除、取余、取整、幂、逻辑比较
  2. 简述字符串类型

    字符串类型:一串表示某种意义的字符

    定义方式:

    name = 'tom'	# 单引号
    name = "tom"	# 双引号	
    name = '''tom	
    bruce
    '''			    # 三单引号/三双引号
    
posted @ 2019-09-09 16:22  Yugaliii  阅读(86)  评论(0编辑  收藏  举报