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. umeditor 上传图片 相对路径的设置和保存

    此篇文章仅献给已实现百度富文本编辑器,想要设置相对路径并保存到数据库,方便以后项目迁移. 使用的版本为1.2.3,适用图片上传中点击以及拖拽功能. //保存图片相对地址的设置        //1.请 ...

  2. scrapy实战5 POST方法抓取ajax动态页面(以慕课网APP为例子):

    在手机端打开慕课网,fiddler查看如图注意圈起来的位置 经过分析只有画线的page在变化 上代码: items.py import scrapy class ImoocItem(scrapy.It ...

  3. SQL Server Form子查询、链接查询

    所用数据表:用户,钱包,订单 一.from子查询 --查询钱包里金额大于30000 and User_ID = Users.ID) ) 二.链接查询 内连接(inner join)外连接(left/r ...

  4. springboot不加载mapper文件问题解析

    1. 场景描述 启动的时候报"springboot available: expected at least 1 bean which qualifies as autowire candi ...

  5. fastjson1.2.48以下版本存在重大漏洞

    1. 场景描述 今天接公司通知:阿里的Fastjson,今天爆出了一个反序列化远程代码漏洞,比较严重的一个漏洞. 影响范围: 1.2.48以下的版本(不包括1.2.48). 2. 解决方案 查看项目f ...

  6. 这样子来理解C语言中指针的指针

    友情提示:阅读本文前,请先参考我的之前的文章<从四个属性的角度来理解C语言的指针也许会更好理解>,若已阅读,请继续往下看. 我从4个属性的角度来总结了C语言中的指针概念.对于C语言的一个指 ...

  7. python爬虫笔记之用cookie访问需要登录的网站

     目标:用cookie访问一个需要登录的网站 如图,直接访问会跳转到登录页面,提示登录. 运行结果: 直接在浏览器上输入该url,网站立马跳转到登录页面.  方法: 1.先手动登录,通过抓包获取coo ...

  8. HashSet源码分析:JDK源码系列

    1.简介 继续分析源码,上一篇文章把HashMap的分析完毕.本文开始分析HashSet简单的介绍一下. HashSet是一个无重复元素集合,内部使用HashMap实现,所以HashMap的特征耶继承 ...

  9. 全栈工程师知识点汇总——html5(上)

    一.HTML5 1.新特性: 1. 取消了过时的显示效果标记 <font></font> 和 <center></center> ... 2. 新表单元 ...

  10. MD5的简单用法

    非常简单的MD5加密和解密(即用即copy) 点击帮助灯泡引用就可使用 //生成MD5帮助文件文件 public class MD5Help{ ///MD5加密 方法类 public static s ...