1、变量的定义

程序中,数据都是临时存储在内存中,为了更快速的查找或使用这个数据,通常我们把这个数据在内存中存储之后,给整个数据定义一个名称,这个名称就是变量。

变量就是在存储数据的时候,当前数据所在的内存地址的一个名字而已。

2、Python变量说明

  • Python中使用变量,不需要声明,直接为变量赋值即可。
  • 在Python中,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的数据。

    这种变量本身类型不固定的语言称之为动态类型语言,与之对应的是静态类型语言。静态类型语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错,例如Java是静态类型语言。和静态类型语言相比,动态类型语言更灵活,就是这个原因。
  • 不能使用没有进行过赋值的变量,如果使用没有赋值过的变量,会报错 NameError: name '变量名' is not defined。
    # 直接执行下面命令
    # 结果:NameError: name 'a' is not defined
    print(a)

3、Python中定义变量

(1)定义语法

Python中定义变量的语法如下:

变量名 = 值
  • 变量名自定义,要满足标识符命名规则。
  • 编程中的等号是赋值的意思,程序在执行的时候是先计算等号右边的值,存储在一个内存空间中,然后把整个值存储的地址赋值给等号左边的变量。

(2)标识符定义规则

变量名、函数名、类名、包名、模块名等统称为标识符。

标识符命名规则是Python中定义各种名字的时候的统一规范,具体如下:

  • 由数字、字母、下划线组成。
  • 不能数字开头。
  • 严格区分大小写。
  • 不能使用内置关键字和保留字。

(3)内置关键字

被Python语言赋予了特定含义的一些字符,换句话说就是Python保留给自己的标识符。这些标识符我们不能再使用如果我们在进行定义,就会产生冲突。

Python中所有关键字都为小写字母,如下:

False     None    True   and      as       assert   break     class
continue def del elif else except finally for
from global if import in is lambda nonlocal
not or pass raise return try while with
yield

不用刻意去记每个关键字的用法和意义,后面学习中,陆陆续续都会接触到,自然而然就记住了。

注意:也别用Python API里面的函数名作为标识符,因为这样会导致函数被覆盖。(以后常用就知道了)

(4)标识符命名习惯

上边是定义标识符的规则,必须要遵守。命名习惯是一种标准的规范,不遵守也没事,只是不专业。

命名习惯类型:

  • 见名知义:为了提高阅读性,经常用有意义的英文单词作为标识符。
  • 大驼峰:即每个单词首字母都大写,例如:MyName。
  • 小驼峰:第二个(含)以后的单词首字母大写,例如:myName。
  • 下划线:例如:my_name。

Python具体名称规范:

  • 包名:多单词组成时所有字母都小写。例如:xxxyyyzzz
  • 类名接口名:多单词组成时,所有单词的首字母大写。例如:XxxYyyZzz
  • 变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写。例如:xxxYyyZzz
  • 常量名:所有字母都大写。多单词时每个单词用下划线连接。例如:XXX_YYY_ZZZ

4、使用变量

在Python中,先要定义一个变量,才能够使用一个变量。

#定义变量
my_name = 'TOM'
#使用变量
print(my_name) schoolName = '小二郎的学堂'
print(schoolName)

Python解释器在执行代码的过程当中,是按照代码的书写顺序,自上而下,一行一行顺序执行的。

Tips:应用程序执行原理

  • 程序 运行之前,程序是 保存在硬盘 中的。
  • 当要运行一个程序时:
    • 操作系统会首先让 CPU 把程序复制到 内存 中。
    • CPU 执行 内存 中的 程序代码。
  • 即:程序要执行,首先要被加载到内存。

Tips:Python 程序执行原理

  • 操作系统会首先让 CPU 把 Python 解释器 的程序复制到 内存 中。
  • Python 解释器 根据语法规则,从上向下 翻译 Python 程序中的代码。
  • CPU 负责执行翻译完成的代码。

参考:https://www.liaoxuefeng.com/wiki/1016959663602400/1017063826246112

『无为则无心』Python基础 — 7、Python的变量的更多相关文章

  1. 『无为则无心』Python基础 — 4、Python代码常用调试工具

    目录 1.Python的交互模式 2.IDLE工具使用说明 3.Sublime3工具的安装与配置 (1)Sublime3的安装 (2)Sublime3的配置 4.使用Sublime编写并调试Pytho ...

  2. 『无为则无心』Python基础 — 6、Python的注释

    目录 1.注释的作用 2.注释的分类 单行注释 多行注释 3.注释的注意事项 4.什么时候需要使用注释 5.总结 提示:完成了前面的准备工作,之后的文章开始介绍Python的基本语法了. Python ...

  3. 『无为则无心』Python基础 — 9、Python字符串的编码与转义

    目录 1.查看变量类型 2.转义字符 (1)转义字符说明 (2)示例 (3)常用转义字符对照表 3.字符编码 (1)字符编码介绍 (2)Python中的字符编码 (3)编码格式应用于不同场景 提示:上 ...

  4. 『无为则无心』Python基础 — 10、Python字符串的格式化输出

    目录 1.什么是格式化输出 2.Python格式化输出的五种方式 方式一:字符串之间用+号拼接 方式二:print()函数可同时输出多个字符串 方式三:占位符方式 方式四:f格式化方式(推荐) 方式五 ...

  5. 『无为则无心』Python基础 — 12、Python运算符详细介绍

    目录 1.表达式介绍 2.运算符 (1)运算符的分类 (2)算数运算符 (3)赋值运算符 (4)复合赋值运算符 (5)比较运算符 3.逻辑运算符 拓展1:数字之间的逻辑运算 拓展2:Python中逻辑 ...

  6. 『无为则无心』Python序列 — 24、Python序列的推导式

    目录 1.列表推导式 (1)快速体验 (2)带if的列表推导式 (3)多个for循环实现列表推导式 2.字典推导式 (1)创建一个字典 (2)将两个列表合并为一个字典 (3)提取字典中目标数据 3.集 ...

  7. 『无为则无心』Python函数 — 29、Python变量和参数传递

    目录 1.Python的变量 (1)Python变量不能独立存在 (2)变量是内存中数据的引用 (3)注意点 2.了解变量的引用 3.Python的参数传递(重点) (1)示例 (2)结论 (3)总结 ...

  8. 『无为则无心』Python基础 — 8、Python中的数据类型(数值、布尔、字符串)

    目录 1.数据类型介绍 2.数值型(Number) 3.布尔型(bool) 4.None(空值) 5.常量 6.字符串(String) 1.数据类型介绍 (1)什么是数据类型 在生活中,我们日常使用的 ...

  9. 『无为则无心』Python基础 — 14、Python流程控制语句(while循环语句)

    目录 1.什么是循环结构 2.while循环 (1)while循环的语法 (2)while循环的应用 3.while语句的死循环 4.break和continue 5.while循环嵌套 (1)应用场 ...

  10. 『无为则无心』Python基础 — 16、Python序列之字符串的下标和切片

    目录 1.序列的概念 2.字符串的下标说明 3.字符串的切片说明 1.序列的概念 序列sequence是Python中最基本的数据结构.指的是一块可存放多个值的连续内存空间,这些值按一定顺序排列,可通 ...

随机推荐

  1. c#基于supersocket的简单websocket服务端收发消息实现

    using log4net; using SuperSocket.SocketBase; using SuperSocket.WebSocket; using System; using System ...

  2. 自定义元类 __call__,__init__,__new__总结

    只要对象能被调用 产生对象的类里必然有__call__方法 在调用类时,必定先触发type里的__call__ __call__下有: 1.产生对象的object.__new__ 2..被调用的类自己 ...

  3. swagger上的接口写入数据库

    一.依赖 virtualenv -p python3.6 xx pip install scrapy pip install pymysql 二. 1.创建项目和spider1 scrapy star ...

  4. Linux_日志管理理论概述

    一.日志系统 1.kernel -->物理终端(/dev/console) --> /var/log/dmesg(系统启动时信息(包括错误信息)记录到该文件) 或者:# dmesg 或 # ...

  5. 分布式存储ceph---ceph概念及原理(1)

    一.Ceph简介: Ceph是一种为优秀的性能.可靠性和可扩展性而设计的统一的.分布式文件系统.ceph 的统一体现在可以提供文件系统.块存储和对象存储,分布式体现在可以动态扩展.在国内一些公司的云环 ...

  6. mysql基础之mariadb的安装,连接,用户,密码,权限设置语句详解

    一.mariadb安装 1.配置mariadb源: [root@ren7 ~]# vim /etc/yum.repos.d/mariadb.repo [mariadb] name = MariaDB ...

  7. S11 Linux系统管理命令

    11.1 lsof:查看进程打开的文件 11.2 uptime:显示系统的运行时间及负载 11.3 free:查看系统内存信息 11.4 iftop:动态显示网络接口流量信息 11.5 vmstat: ...

  8. LINUX创建文件和目录的默认权限

    在linux中,一位用户在创建文件和目录时,对其具有的权限都是一样的,如需更改,需要chmod命令做相应的更改.为什么?其实是权限掩码起作用了. 权限掩码的作用就是规范初创文件和目录时候的权限设置,免 ...

  9. 标准Gitlab命令行操作指导

    gitlab是一个分布式的版本仓库,总比只是一个本地手动好些,上传你的本地代码后后还能web GUI操作,何乐不为? 贴上刚刚搭建的gitlab,看看git 如何操作标准命令行操作指导 1.命令行操作 ...

  10. Django中的中英文切换

    setting.py文件中 其中 zh-Hans是简体中文 zh-Hant是繁体中文 所以更改setttings.py 下 LANGUAGE_CODE = 'zh-Hans'即可 # 英文 LANGU ...