变量(Variable)可以看成一个小箱子,专门用来“盛装”程序中的数据。每个变量都拥有独一无二的名字,通过变量的名字就能找到变量中的数据。

从底层看,程序中的数据最终都要放到内存中,变量其实就是这块内存的名字。

1. Python变量的赋值

在编程语言中,将数据放入变量的过程叫做赋值(Assignment)。每个变量在使用前都必须赋值,变量赋值以后,该变量才会被创建。

Python 使用等号=作为赋值运算符,具体格式为:

name = value

# name 表示变量名,value 表示值,也就是要存储的数据。

变量的值不是一成不变的,它可以随时被修改,只要重新赋值即可。

2. Python变量的命名

变量名只能包含字母、数字和下划线。变量名可以字母或下划线打头,但不能以数字打头。

变量名是严格区分大小写的。

变量名不能包含空格、@、% 以及 $ 等特殊字符。

不要将Python关键字和函数名用作变量名,即不要使用Python保留用于特殊用途的单词,如print。

Python 语言中,以下划线开头的标识符有特殊含义。

以单下划线开头的标识符(如 _width),表示不能直接访问的类属性,其无法通过 from...import* 的方式导入;

以双下划线开头的标识符(如__add)表示类的私有成员;

以双下划线作为开头和结尾的标识符(如 init),是专用标识符。

变量名应既简短又具有描述性。例如,name比n好,student_name比s_n好,name_length比length_of_persons_name好。

慎用小写字母l和大写字母O,因为它们可能被人错看成数字1和0。

Python 允许使用汉字作为标识符,但我们应尽量避免使用汉字作为标识符,这会避免遇到很多奇葩的错误。

查看 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'

3. Python变量的类型(弱类型语言)

在强类型的编程语言中,定义变量时要指明变量的类型,而且赋值的数据也必须是相同类型的,如C语言、C++、Java 是强类型语言的代表。

和强类型语言相对应的是弱类型语言,Python、JavaScript、PHP 等脚本语言都是弱类型的。

弱类型语言有两个特点:

变量无须声明就可以直接赋值,对一个不存在的变量赋值就相当于定义了一个新变量。

变量的数据类型可以随时改变,比如,同一个变量可以一会儿被赋值为整数,一会儿被赋值为字符串。

注意,弱类型并不等于没有类型!弱类型是说在书写代码时不用刻意关注类型,但是在编程语言的内部仍然是有类型的。

Python中数据类型可以分为数字型和非数字型。

数字型

整型 (int)

浮点型 (float)

布尔型 (bool)

复数型 (complex)

非数字型

字符串 (String)

列表 (list)

元组 (tuple)

集合 (set)

字典 (dict)

我们可以使用内置函数type()来检测某个变量或者表达式的类型,例如:

>>> num = 10

>>> type(num)

>>> num = 15.8

>>> type(num)

>>> num = 20 + 15j

>>> type(num)

>>> type(3*15.6)

4. Python变量数据类型的转换

虽然 Python 是弱类型编程语言,不需要像 Java 或 C 语言那样还要在使用变量前声明变量的类型,但在一些特定场景中,仍然需要用到类型转换。

比如说,我们想通过使用 print() 函数输出信息“您的身高:”以及浮点类型 height 的值,如果在交互式解释器中执行如下代码:

height = 70.0

print("您的身高"+height)

# Traceback (most recent call last):

# File "", line 1, in

# print("您的身高"+height)

# TypeError: must be str, not float

你会发现这是错误的,解释器提示我们字符串和浮点类型变量不能直接相连,需要提前将浮点类型变量 height 转换为字符串才可以。

Python 已经为我们提供了多种可实现数据类型转换的函数.

函 数

作 用

int(x)

将 x 转换成整数类型

float(x)

将 x 转换成浮点数类型

complex(real,[,imag])

创建一个复数

str(x)

将 x 转换为字符串

repr(x)

将 x 转换为表达式字符串

eval(str)

计算在字符串中的有效 Python 表达式,并返回一个对象

chr(x)

将整数 x 转换为一个字符

ord(x)

将一个字符 x 转换为它对应的整数值

hex(x)

将一个整数 x 转换为一个十六进制字符串

oct(x)

将一个整数 x 转换为一个八进制的字符串

需要注意的是,在使用类型转换函数时,提供给它的数据必须是有意义的。例如,int() 函数无法将一个非数字字符串转换成整数。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

本文标题: Python变量及数据类型用法原理汇总

本文地址: http://www.cppcns.com/jiaoben/python/331118.html

python语言变量随时命名随时赋值_Python变量及数据类型用法原理汇总相关推荐

  1. python语言的变量随时命名随时_计算机二级

    编程题较难,比考试难度高.能看懂就可以. 1. 按照"后进先出"原则组织数据的数据结构是____ A.双向链表 B.队列 C.栈 D.二叉树 2. 以下选项的叙述中,正确的是 A. ...

  2. python语言的变量随时命名随时_模拟试卷C

    一.单项选择题 1. 按照"后进先出"原则组织数据的数据结构是____ 队列 栈 双向链表 二叉树 2. 以下选项的叙述中,正确的是 循环队列有队头和队尾两个指针,因此,循环队列是 ...

  3. python语言有哪些类型的运算符_python(4)-变量 数据类型和运算符

    第二章:变量.数据类型.运算符 思考:怎么理解变量和内存? 变量:就等同于上面图中的age name hobby 内存:存储位置里所装的内容 18 张三 打球 变量一定是存在某个地址,可以从变量名找到 ...

  4. python变量的赋值_python变量赋值|变量赋值

    python变量赋值 Python 中的变量不需要声明.每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建. 在 Python 中,变量就是变量,它没有类型,我们所说的"类型" ...

  5. python定义变量并赋值_Python 变量类型及变量赋值

    在 Python 中,变量不一定占用内存变量.变量就像是对某一处内存的引用,可以通过变量访问到其所指向的内存中的值,并且可以让变量指向其他的内存.在 Python 中,变量不需要声明,但是使用变量之前 ...

  6. python语言的注释语句引导符_Python 为什么用 # 号作注释符?

    关于编程语言中的注释,其重要性基本上已为大家所共识. 然而关于注释的规范,这个话题就像我们之前聊过的缩进.终止符和命名方式一样,众口难调. 注释符通常可分为两种,即行注释与块注释(inline/blo ...

  7. Python基础知识学习(一)——Python语言概述、安装、运行、变量、数据类型概述

    目录 1.Python语言概述 2.Python安装 3.Python运行 4.Python变量.类型及存储 1.Python语言概述 Python是一门跨平台.开源.免费的解释型高级动态编程语言. ...

  8. c++ 静态变量赋值_Python变量及常量解释说明

    变量 (1)在计算机程序中,变量不仅可以是数字,还可以是任意数据类型, 变量子啊程序中就是一个变量名表示的,变量名必须是大小写英文,数字,和"_"的组合,切不能以数字开头. a = ...

  9. python 全局变量使用报错没有定义_Python变量作用域代码解析

    本篇文章小编给大家分享一下Python变量作用域代码解析,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看. 特点 python的作用域是静态的,在源代码中 ...

最新文章

  1. Podman又是什么新技术?它和Docker有啥区别?
  2. layui给select下拉框赋值
  3. yum之如何手动创建本地yum仓库
  4. 【Python教程】sort 与sorted的用法与区别
  5. the vmware authorization service is not running
  6. PHP防SQL注入攻击
  7. Realtime Ray Tracing RenderMan Point Cloud
  8. 禁用F12和鼠标右键,防止查看控制台代码
  9. 平衡二叉树(AVL)python实现
  10. Apache Solr solrconfig.xml 中文说明
  11. 微擎不现实数组_Java这个类,大概就和现实中吃饭一样常见
  12. Eprime的txt数据转换为excel
  13. Java常用代码汇总(经典代码)
  14. 深圳Python培训:100天从新手到Python大师
  15. 网关监控软件设计与实现
  16. html 还原键盘默认事件,js阻止默认事件 (两种方法)及键盘事件onkeydown 、 onkeypress 、onkeyup实例讲解...
  17. 不需要 Root,也能用上强大的 Xposed 框架:VirtualXposed
  18. matlab中subs怎么用,【转】MATLAB中subs函数效率低
  19. 三个月通过信息系统项目管理师经验帖(2021年11月,新鲜出炉,高项详解)
  20. 第一届中兴捧月算法大赛迪杰斯特拉派解决方案

热门文章

  1. 【白皮书分享】技术重构社会供应链:未来科技趋势白皮书.pdf(附下载链接)...
  2. 【报告分享】直播电商生态进化论-2020直播电商行业研究报告.pdf(附下载链接)...
  3. Python实战从入门到精通第十五讲——定义匿名或内联函数
  4. 学习记录-操作系统知识(1)
  5. 他山之石 | 腾讯 多模态内容理解技术及应用
  6. 自然语言处理之TF-IDF
  7. android伸缩动画自定义,Android干货:自定义带动画的View
  8. Leetcode每日一题:1356.sort-integers-by-the-number-of-1-bits(根据二进制1的个数排序)
  9. 自动驾驶公司 | 纽劢科技与黑芝麻智能战略合作,共推自动驾驶量产落地
  10. RecyclerView实现多type页面