Part 1 变量

一、什么是变量?

字面意思:变化的量。

而在计算机中,我们可以将它理解为世间万物变化的状态。

二、为什么要有变量?

首先,无论是我们还是计算机都需要变量来记录发生的状态的变化,其次计算机程序运行时就会产生一系列的状态变化,所以变量存在很有必要。

三、定义变量

代码中一般这样表示:

x=1
age=18
name=‘Adela'

四、变量的组成

变量由变量名、赋值符号以及变量值组成。

变量名:变量名接受变量值

赋值符号:赋值

变量值:存放数据,记录状态

五、变量名的命名规范

  • 最好不要用中文,英文差的初期可用

  • 变量名由数字/字母/下划线组成,不要以数字开头

  • 不要用无意义的,例如"_"、"*"、"^"等

  • 关键字不要用

['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']

六、变量名的两种风格

驼峰体

  • AgeOfNick

下划线

  • age_of_you

Part 2 常量

一、什么是常量

一般指不变的量,但可以变,不过在计算机中约定俗成的不可变

二、常量的表示方式

AGE=18 全部大写可以定义为常量

Part 3 Python变量内存管理

新建变量会开辟新的内存空间。

一、变量存放位置

变量存放在内存当中

二、Python垃圾回收机制

类比说明:

  • 一个房间--->一个变量值--->10

  • 一个门牌--->一个变量名--->X

  • 新的房间--->11--->旧的门牌--->X

  • 旧的房间--->10--->垃圾回收

成语概括垃圾回收机制:退位让贤

引用计数为0的时候,Python解释器会释放该变量值的内存空间。

引用计数:

有n个变量名指向一个变量值A,则A有n个引用计数。

解释:原变量值的变量名被赋予新的变量值,原变量值会变成垃圾,所以拥有变量名才拥有身份,这个变量名就称为引用计数。

X=10
y=x
x=12
del y #此时10的引用计数为0,12的引用计数为1

三、小整数池

为了避免多个相同变量值的内存占用引起的效率问题(多次回收太麻烦),Python解释器规定一个小整数池[-5,256],在这个全局解释器范围内的小整数对象重复利用时不会被垃圾回收机制回收。

Part 4 变量的三个特征

一、打印

x=10
print(x) #打印变量值
print(id(x)) #打印变量的内存地址
print(type(x)) #打印变量值的数据类型

二、判断变量值是否相等

x=10
y=10
print(x == y) #判断变量值是否相等
x=y=z=10
print(x == y ==z) #判断变量值是否相等

三、判断变量id是否相等

x=10
y=12
print(id(x))
print(id(y))
print(x is y) #判断变量id是否相等

Part 5 花式赋值

一、链式赋值

a=10
b=10
c=10
print(a,b,c) #print(f'a:{a},b:{b},c:{c}')

二、交叉赋值

x=10,y=20
x,y=y,x
print(f'x:{x},y:{y}')

Part 6 注释

一、注释

因为代码可能需要互相借鉴或者共用,所以需要备注一些晦涩难懂的代码,方便别人和自己理解。

快捷键:ctrl+/

二、添加注释的原则

#--->单行注释

‘ ’ ‘&“ ” “--->多行注释

【0729 | Day 3】Python基础(一)的更多相关文章

  1. python之最强王者(2)——python基础语法

    背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于pytho ...

  2. Python开发【第二篇】:Python基础知识

    Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...

  3. Python小白的发展之路之Python基础(一)

    Python基础部分1: 1.Python简介 2.Python 2 or 3,两者的主要区别 3.Python解释器 4.安装Python 5.第一个Python程序 Hello World 6.P ...

  4. Python之路3【第一篇】Python基础

    本节内容 Python简介 Python安装 第一个Python程序 编程语言的分类 Python简介 1.Python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum) ...

  5. 进击的Python【第三章】:Python基础(三)

    Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...

  6. 进击的Python【第二章】:Python基础(二)

    Python基础(二) 本章内容 数据类型 数据运算 列表与元组的基本操作 字典的基本操作 字符编码与转码 模块初探 练习:购物车程序 一.数据类型 Python有五个标准的数据类型: Numbers ...

  7. Python之路【第一篇】python基础

    一.python开发 1.开发: 1)高级语言:python .Java .PHP. C#  Go ruby  c++  ===>字节码 2)低级语言:c .汇编 2.语言之间的对比: 1)py ...

  8. python基础之day1

    Python 简介 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. Python为我们提供了非常完善的基础代码库,覆盖了 ...

  9. python基础之文件读写

    python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使用os模块的一些方法如下: 得到 ...

  10. python基础之编码问题

    python基础之编码问题 本节内容 字符串编码问题由来 字符串编码解决方案 1.字符串编码问题由来 由于字符串编码是从ascii--->unicode--->utf-8(utf-16和u ...

随机推荐

  1. java基础第十八篇之单元测试、注解和动态代理

    1:单元测试 1)JUnit是一个Java语言的单元测试框架,这里的单元指的就是方法 2)单元测试用来替换以前的main方法 1.1 Junit测试的步骤 1:在方法的上面加上 @Test 2:将ju ...

  2. Python入门基础(2)

    如果你是博客园团队,,看到不符合您们要求的地方可否指出来?不要你不符合要求,然后我不符合哪项要求?是要我自己去找么? python条件语句 首先介绍的是if语句,python中的if语句格式如下: i ...

  3. py+selenium+IE10【IE已停止工作】【已解决】

    问题:跑自动化时,到某个用例IE就崩,提示已停止工作.   手工跑的时候,IE挂,提示“Internet Explorer 已经为了帮助保护您的计算机而关闭此网页”. 且每次都在需要调用flash插件 ...

  4. c++小游戏——扫雷

    #include<cstdio> #include<cstring> #include<algorithm> #include<conio.h> #in ...

  5. RabbitMQ 从入门到精通(二)

    目录 1. 消息如何保障百分之百的投递成功? 1.1 方案一:消息落库,对消息状态进行打标 1.2 方案二:消息的延迟投递,做二次确认,回调检查 2. 幂等性 2.1 幂等性是什么? 2.2 消息端幂 ...

  6. 巧力避免ViewPager的预加载数据,Tablayout+Fragment+viewPager

    问题描述 最近在进行一个项目的开发,其中使用到了Tablayout+Fragment+viewPager来搭建一个基本的框架,从而出现了设置数据适配器的时候,item的位置错乱问题.我打印log日志的 ...

  7. [leetcode] 20. Valid Parentheses (easy)

    原题链接 匹配括号 思路: 用栈,遍历过程中,匹配的成对出栈:结束后,栈空则对,栈非空则错. Runtime: 4 ms, faster than 99.94% of Java class Solut ...

  8. Jenkins持续部署-创建差量更新包

    目录 Jenkins持续部署-创建差量更新包 目录 前言 目的 详细流程 生成版本号 获取版本号 创建文件更新清单 压缩 获取上个版本的包 创建差量更新包 读取服务器Json配置 远程创建文件夹目录 ...

  9. 熟悉软件的生命周期AND测试工程师的工作流程

    1.软件的生命周期 *软件生命周期(SDLC)是软件开始研制到最终被废弃不用所经历的各个阶段.在不同阶段里,由不同的组织.个人和资源进行着明确的任务. 2.生命周期的模型 *常见的生命周期模型有:瀑布 ...

  10. 【iOS】ERROR ITMS-90032: "Invalid Image Path...

    用 Application Loader 提交苹果审核时出现了这个问题,具体如下: ERROR ITMS-: "Invalid Image Path - No image found at ...