浅谈 python变量

python变量概念

程序执行的过程中,很多数据都在变化的过程,我们需要一种机制把这种变化体现出来,变量是我们记录这种变化的方式。

python以及其它各种语言的变量 ,其作用都是用于存数据的,可以存动态的数据,大小,速度, 也可以存相对静态的数据,如性别 年龄等。

我们之所以需要变量去存数据,是为了在程序运行过程中后面去取出来变量的值,存的目的是为了取,为了使用。 存是手段,取才是目的

变量的使用原则: 先定义 后引用

name = 'alin'
print(name)

alin

变量的三大组成部分

变量名字 赋值符号 变量的值

变量名的要求

上面说过 变量的作用是存数值,为了方便后面的使用,当我们在使用变量的值的时候 是通过变量名把值取出来的,所以在命令变量名的时候,要尽量做到,见名知意。什么意思那 比如我们给30个小朋友起名字 为了区分男女,女孩名字一般叫 什么花 什么芬 什么雅, 男孩叫 什么勇 什么壮,什么宏 这样当我们看到名字的时候 不用去查看详细的个人资料就能知道小朋友的性别,总结一句话

不要给小女孩起名 王大锤

python对变量名的命名也有一些具体的要求

  1. 变量名只能是 字母、数字或下划线的任意组合

    像我们的名字 只能出现汉字和阿拉伯字母,你给自己起名 刘? 试试民政局的人打不打你)

  2. 变量名的第一个字符不能是数字

    (就像我们的名字第一个是姓氏,python 变量的姓氏不能是数字)

  3. 关键字不能声明为变量名,常用关键字如下

    故名思意 下面这些变量名python自己用了 你就别用了

    import keyword
    print(keyword.kwlist)

    ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', '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的命名风格推荐小写字母+下划线的方式

    age_student = 20

变量的三个特性

  1. id : 反映的是变量在内存中的地址,内存地址不同,则id不同,

我们可以把内存当成酒庄 变量名就是酒瓶上的名字 内存地址就是酒瓶 变量的值就是里面的酒。

name = 'alin'
print(id(name))

2683195291888

  1. type:不同类型的值用来表示记录不同的状态

    name = 'alin'
    print(type(name))

    <class 'str'>

  2. value:值

    name = 'alin'
    print(name)

    alin

  3. 变量的比较

    is与==

    1. is 比较左右两个值的身份是否相同, 酒庄举例 这辆到底是不是一瓶酒

    2. == 比较左右两边的值是否相同 酒庄举例 这两瓶装的到底是不是一样的酒

      x = 'info:age:18'
      y = 'info:age:18'
      print(id(x))
      print(id(y))
      print(x == y)
      print(x is y)

      3019507091920

      1512378137008

      True

      False

      注: pycharm中会做内存优化 需要在命令行操作验证

      得出的结果x和y是相等的 但是x不是y

      小整数池[-5,256] 在python中 一些常用的值 python会预先开辟出一块空间,相同的变量的值直接取用,不在另外开辟内存空间,节省内存

      x = -5
      y = -5
      print(id(x))
      print(id(y))

      140718716872320

      140718716872320

      x = -6
      y = -6
      print(id(x))
      print(id(y))

      1908425730864

      1908425728176

      x = 256
      y = 256
      print(id(x))
      print(id(y))

      140718716864064

      140718716864064

      x = 257
      y = 257
      print(id(x))
      print(id(y))

      2290485209904

      2290485207216

      注意:python语法中没有常量的概念,但是在程序的开发过程中会涉及到常量的概念

      AGE_OF_ALIN = 73 # 小写字母全为大写代表常量,这只是一种约定、规范

      AGE_OF_ALIN='19'
      print(AGE_OF_ALIN)

      19

1-浅谈 python变量的更多相关文章

  1. 浅谈Python在信息学竞赛中的运用及Python的基本用法

    浅谈Python在信息学竞赛中的运用及Python的基本用法 前言 众所周知,Python是一种非常实用的语言.但是由于其运算时的低效和解释型编译,在信息学竞赛中并不用于完成算法程序.但正如LRJ在& ...

  2. 开发技术--浅谈Python函数

    开发|浅谈Python函数 函数在实际使用中有很多不一样的小九九,我将从最基础的函数内容,延伸出函数的高级用法.此文非科普片~~ 前言 目前所有的文章思想格式都是:知识+情感. 知识:对于所有的知识点 ...

  3. 开发技术--浅谈python数据类型

    开发|浅谈python数据类型 在回顾Python基础的时候,遇到最大的问题就是内容很多,而我的目的是回顾自己之前学习的内容,进行相应的总结,所以我就不玩基础了,很多在我实际生活中使用的东西,我会在文 ...

  4. 开发技术--浅谈python基础知识

    开发|浅谈python基础知识 最近复习一些基础内容,故将Python的基础进行了总结.注意:这篇文章只列出来我觉得重点,并且需要记忆的知识. 前言 目前所有的文章思想格式都是:知识+情感. 知识:对 ...

  5. 浅谈Python时间模块

    浅谈Python时间模块 今天简单总结了一下Python处理时间和日期方面的模块,主要就是datetime.time.calendar三个模块的使用.希望这篇文章对于学习Python的朋友们有所帮助 ...

  6. 浅谈 PHP 变量可用字符

    原文:浅谈 PHP 变量可用字符 先来说说php变量的命名规则,百度下一抓一大把:(1) PHP的变量名区分大小写;(2) 变量名必须以美元符号$开始;(3) 变量名开头可以以下划线开始;(4) 变量 ...

  7. 浅谈python字符串存储形式

    http://blog.csdn.net/zhonghuan1992 钟桓 2014年8月31日 浅谈python字符串存储形式 记录一下自己今的天发现疑问而且给出自己现有知识有的回答. 长话短说,用 ...

  8. [转]浅谈Python web框架

    说到web framework,Ruby的世界Rails一统江湖,而Python则是一个百花齐放的世界,各种micro-framework.framework不可胜数,不完全列表见:http://wi ...

  9. 浅谈Python Web的五大框架

    说到Web Framework,Ruby的世界Rails一统江湖,而Python则是一个百花齐放的世界.各种micro-framework.framework不可胜数. 尽管还有一大脚本语言PHP也有 ...

随机推荐

  1. Qt启动子进程,子进程关闭时通知主进程,实现主进程对子进程的管理

    自己开发了一个股票智能分析软件,功能很强大,需要的点击下面的链接获取: https://www.cnblogs.com/bclshuai/p/11380657.html 1.需求描述  Qt主进程启动 ...

  2. ClassFile与JClass

    本次大作业中 java程序——>二进制流(byte[ ]表示)——>ClassFile对象——>JClass ClassFile的字段:magic,minorversion..... ...

  3. 放眼SEM现状及发展历程

    http://www.wocaoseo.com/thread-187-1-1.html 由于近年来移动应用的基本普及,搜索引擎营销随之进入高速发展时代,应用层次的提升已经成为企业营销策略的一个重要组成 ...

  4. nodejs打包成桌面程序(exe)的进阶之路

    nodejs打包成桌面程序(exe)的进阶之路 node js bat 前端 计划任务 前言:最近的研究,请大佬们细品 第一篇 - 任务计划程序篇 说真的研究到将nodejs打包成可执行的exe文件是 ...

  5. MySQL常用指令,java,php程序员,数据库工程师必备。程序员小冰常用资料整理

    MySQL常用指令,java,php程序员,数据库工程师必备.程序员小冰常用资料整理 MySQL常用指令(备查) 最常用的显示命令: 1.显示数据库列表. show databases; 2.显示库中 ...

  6. Pytest的装饰器——parametrize中ids里包含中文,用例标题显示异常如何解决?

    在使用pytest做测试的过程中,经常会用到pytest.mark.parametrize来对批量生成测试用例,比如 @pytest.mark.parametrize( ['a', 'b', 'exp ...

  7. HDU - 3499 -(Dijkstra变形+枚举边)

    Recently, Shua Shua had a big quarrel with his GF. He is so upset that he decides to take a trip to ...

  8. The Unique MST(最小生成树的唯一性判断)

    Given a connected undirected graph, tell if its minimum spanning tree is unique. Definition 1 (Spann ...

  9. Zabbix如何监控Linux防火墙服务

    今天在巡检的时候,突然想到Zabbix能否监控Linux的防火墙服务呢? 显然是可以的,但是Zabbix 5下默认的模板"Template OS Linux by Zabbix agent& ...

  10. yum wget rpm

    wget 类似于迅雷,是一种下载工具          下载安装包 yum: 是redhat, centos 系统下的软件安装方式 下载安装包并自动安装 以及一些依赖关系 基于RPM包管理,能够从指定 ...