作业

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

  • 交互式

    优点:可以直接看到结果

    缺点:关掉程序就没了

  • 命令行式

    优点:可以保存

    缺点:不能及时看到错误反馈

2. 简述Python垃圾回收机制:

  • 当一个变量值的引用计数为0的时候,会触发垃圾回收机制,改变量值会被回收
  • 当python启动的时候,会自动定义[-5,256]之间的整数变量,他们的内存空间已经写死了

3. 对于下述代码:

x = 10
y = 10
z = 10
del y

10的引用计数为多少?

答案:10的引用次数为2次

x = 257
y = x
del x
z = 257

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

答案:x对应的变量值257的引用计数为1次

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

    答案:在Python中,id是什么?id是内存地址,那就有人问了,什么是内存地址呢? 你只要创建一个数据(对象)那么都会在内存中开辟一个空间,将这个数据临时加在到内存中,那么这个空间是有一个唯一标识的,就好比是身份证号,标识这个空间的叫做内存地址,也就是这个数据(对象)的id,那么你可以利用id()去获取这个数据的内存地址:

    name = '太白'
    print(id(name))  # 1585831283968
    

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

x = 10

答案:打印变量:10

​ 打印变量值:1686662912

​ 打印变量数据类型:<class 'int'>

5. 对于下述代码:

x = 257
y = x
z = 257

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

答案:相同;不相同:x、y、z的所在的内存地址分别为:1852613504720;2788447989456;3012403900112;

x = 257
y = x
z = 257

print(id(x))   # 1852613504720
print(id(y))   # 2788447989456
print(id(z))   # 3012403900112
#因为打印的结果不相同

6. 简述数字类型

  • 整型(int) 10,20,180,170
  1. 作用:描述年龄/id号

  2. 定义方式

    bzr_age = 30
    print(bzr_age)
    bzr_age = int(31)
    print(bzr_age)
    nick_age = 18
    
  3. 使用方法:

    x = 1
    y = 2
    print(x + y)
    print(x - y)
    print(x * y)
    print(x / y)
    print(x % y)  # 取余
    print(x // y) # 取整
    print(x ** y) # 幂
    
  • 浮点型(float)
  1. 作用: 3.2w

  2. 定义

    salary = 3.2
    salary1 = float(3.2)
    # 4
    height = float(4)  # 4.0  # 强制类型转换
    print(height)
    
    salary2 = int(3.7)  # 不会四舍五入
    print(salary2)
    
    # 四舍五入
    print(round(3.7))
    
  3. 使用方法: + - * / % // **

    逻辑比较
    x = 1
    y = 2
    print(x > y)  # False
    print(x >= 1)  # True
    

7. 简述字符串类型

什么是字符串:一串字符str

  1. 作用:描述姓名/单个爱好/性别

  2. 定义方式

    name  = 'nick"sadsfffffffffffffffffffffffffffffffffffffffffffffffffffffff'  # 碰到第一个单引号,字符串类型,碰到第二单引号
    name2  = "nick's"  # 碰到第一个双引号,字符串类型,碰到第二双引号
    name1 = "nick"
    
    
    name4  = '''
    sdf' "" ''
    sdklfj
    '''
    
    print(name4)
    name5 = """
    sksdlfj"""
    
    
    name = '''sdkfjskldjfk
    ljskldjf'''
    print(name )
    
    int_str = str(123)
    int_str = str(123.1)
    print(type(int_str))
    str_int= int('123')
    print(str_int)
    print(type(str_int))
    
  3. 使用方法

    str1 = 'nick '
    str2 = 'handsome'
    
    print(str1 +' ' + str2 ) # 字符串不能和数字相加
    print(str1 * 10)
    
原文地址:https://www.cnblogs.com/gfhh/p/11491959.html