• day03 python运行、变量、注释、内存管理、数据类型


    day03

    执行python程序的两种方式

    第一种:交互式,在cmd中运行

    优点:直接给出结果
    缺点:无法保存

    • jupyter 对这一种进行了封装

    第二种:命令行式,通过cmd中输入python3文本

    1. txt文件可以,.py文件也可以,命令行可以识别任何文本文件

    优点:可以保存
    缺点:无法及时得到报错反馈

    三个步骤

    1. 编写python文件
    2. 找到python文件路径,只是相当于一个文本编辑器(从硬盘读入内存),打开这个文件一瞬间没有语法这个概念,print("hello world")只是一串普通的字符
    3. 在内存运行并解释的时候才会有python语法这个概念,才会打印"hello world"

    变量

    什么是变量

    变量:一种会变化的状态,这个状态可以描述世间万物,描述世间万物的状态

    python中定义变量

    name = 'demon'
    # 变量名 赋值符号 变量值
    print(name)
    # 变量名做了什么事情:保存,接收了变量值
    

    定义变量名的命名规范

    1. 变量名具有某种意义
    2. 变量名只能使用字母、数字、下划线组成,并且第一个字符不能是数字(然后也不能是下划线)
    3. 不能使用关键字作为变量名
      • 关键字:具有某种意义
      • 语法:print("demon")

    两种变量名的命名规范

    1. 用下划线划分单词
      demon_boy
    2. 使用驼峰命名规则(不建议使用)
      demonBoy

    常量

    固定不变的量

    定义常量

    *** python中没有严格意义上的常量,如果非要改,第二天就会被炒鱿鱼,一定要记住常量是约定俗成的,但是也能更改,但是不要更改 ***

    常量要大写

    注释是什么

    不加注释

    DEMON_HEIGHT = 150
    DEMON_HEIGHT = DEMON_HEIGHT + 1
    print(DEMON_HEIGHT)
    

    加注释

    DEMON_HEIGHT = 150
    # DEMON_HEIGHT = DEMON_HEIGHT + 1
    # print(DEMON_HEIGHT)
    

    注释有什么用

    取消python的语法,让# 后面的字符变为普通的字符

    name = 'demon'
    height = '175' # 身高
    weight = '110'
    
    # for 循环有什么用
    for i in [1,2]:
        print(i)
    
    • 变量的注释的后面,类似for循环这样的结构注释写在第一行前面

    多行注释

    三单引号中间
    '''
    注释区域
    '''
    
    三双引号中间
    """
    注释内容
    """
    

    内存管理

    变量:接受变量值,描述世间万物变化的状态

    看python在内存中如何创建变量的

    引用计数

    引用计数是针对变量值的

    name = 'demon' # 引用计数为1,这个变量值被引用多少次
    name2 = name # 'demon'引用计数为2
    del name # 引用计数为1
    del name2 # 引用计数为0
    

    垃圾回收机制

    当变量值的引用计数为0时候,python会自动回收该变量值的内存占用空间

    小整数池

    [-5,256] 之间的证书由于经常用到,所以在python启动的那一刻,就会开辟一块内存空间放入这些证书,他不会被垃圾回收机制回收

    时间段并且占用内存较小,会给你放在同一块内存中(一些IDE提供的封装)

    定义变量的三个特征

    数据类型

    不同的数据会有不同的数据类型

    为了定义不同的数据,我们python中定义了下述几个数据类型

    数字类型

    整型

    作用:
        描述ID号,银行卡号
    定义方式:
        height = 180
    方法:
        + - * / % //
    

    浮点型

    作用:
        定义薪资32.2k,商品价格$99.99
    定义方式:
        salary = 32.2
    方法:
        + - * / % //
    

    字符串

    作用:
        描述名字之类
    定义方式:
        name = '123123'
        name = "sadfasdf"
        name = '''
            afdsa
            sdfasdfsa
            dsfasdfsd
            '''
    用法:字符串内置方法
    

    列表

    • 定义方式:[]内使用逗号分隔多个元素,元素可以为任何数据类型
    • 方法: 索引取值

    hobby = ['read','run','ball','fishing']

    字典

    • 定义方式:{}内以key:value的形式存放在{}内,并且以逗号切割,然后记住key,key一般为字符串并且有某种意义,value可以为任何数据类型

        demon_info = {
            'name':'demon',
            'height':175,
            'weight':120,
            'hobby':['run','read']
        }
      
    • 方法:关键字取值

    布尔类型

    True or False

    布尔类型一般不用于打印,定义变量,除了0、None、空、False都自带布尔值为True

  • 相关阅读:
    如何在Windows,Linux下查看JAVA端口占用情况(阿里)
    Java超类-java.lang.object
    多线程-Thread的run()与start()的区别
    sleep、yield、wait、join的区别(阿里)
    SOA (面向服务的架构)-Service Oriented Architecture
    MySQL存储过程详解 mysql 存储过程
    navicat创建存储过程的小问题
    SVN使用教程
    #pragma的用法
    windows下远程连接Mysql
  • 原文地址:https://www.cnblogs.com/wsxiaoyao/p/10894606.html
Copyright © 2020-2023  润新知