前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python入门(4)

Python入门(4)

作者头像
高一峰
发布2020-09-22 09:40:34
4270
发布2020-09-22 09:40:34
举报
文章被收录于专栏:高渡号外
第四节 常量和变量

大家好,今天开始正式学习Python语法。最基础的东西无外乎:常量和变量、数据类型和数据结构、流程控制语句等。了解它们并不难,它们就像构成一座大厦的砖瓦沙石,看起来没有任何深奥的东西,但是,我们必需了解它们,因为,未来在我们搭建一个项目的时候,至少你得知道当我们需要用到砖瓦的时候,你不会错拿了砂石填进去。所以,即便是一些简单到无趣的东西,我们也需要大致的去了解它们分别是什么?有什么特点?如何使用?

这节课,我们先来了解常量和变量。

一、常量

主要包括:数字、字符串。

常量,又被称为字面常量。例如:3、2.16 这样的数字,或者,例如:“This is a dog”这样的文本。所谓字面常量,意思是我们阅读、理解和使用的都是它们字面上的或者说是它本身直观的含义。

1、数字

数字主要分为两种类型:整数(Integers)与浮点数(Floats)。

(1)、整数(int):与我们中学数学定义的整数含义一致。比如:1、23、1999

(2)、浮点数(float ):简单说就是包含小数点的数字,即所有的小数。如:3.14

这个我们可以简单的理解为整数和小数,难度系数:小学算术级。

2、字符串(string)

概念:字符串就是 字符(Characters) 的 序列(Sequence)。

通常字符串是放置在引号中间的。引号可以是:单引号、双引号,和三引号。三引号还可以标识多行文本的字符串。例如:

str1 = 'redhat'

str2 = "redhat"

str3 = """red

hat"""

需要特别注意的:

(1)、大小写敏感!例如:“abc”与“Abc”是不相同的。

(2)、需要在字符串中使用特殊字符时,python用反斜杠(\)转义字符。

有同学可能会注意到,它与其他计算机语言对字符串的描述似乎不完全相同。但是,我们在写Python代码时,随时都会使用到字符串,所以,请特别关注,字符串是个重点。

不可变:

字符串一旦被定义,你就不能改变它,因为它就是一个常量。如果你实在要修改一个字符串的“值”,你可以把它定义给另一个字符串。

格式化:

Python 支持格式化字符串的输出 。基本的用法,就是使用format()方法将一个值插入到字符串对应的占位符{ }中。例如:

>>> print('{0} was {1} years old when he wrote this book'.format(“zhangsan”, 20))

>>> zhangsan was 20 years old when he wrote this book

二、变量

  • 编程是为了处理信息或数据,所以,仅有常量是不够的,我们显然还需要一些能够存储信息、又能操纵它们的东西,这就是变量(Variables) 。
  • 正如其名,变量的值是可变的。事实上,你可以用变量来存储任何东西。
  • 变量的物理存在形式:它是你的计算机内存中存储信息的一部分。
  • 与常量不同,为了方便访问变量,因此,需要为它们命名。

准确描述变量要比常量复杂一些,为此,我们需要先理解以下几个概念 ...

概念1:标识符

标识符,是大多数计算机语言都有的概念,它通常是针对操作对象命名的一种描述。我们很快会接触到更多的python操作对象,如:类、方法、列表、字典等等。同样,变量也是标识符的一个例子。简单的说,标识符(Identifiers)就 是一个操作对象的名称。我们为变量命名,就是定义一个标示符。

标识符之命名规则

  • 第一个字符必须是字母或下划线( _ )。
  • 标识符的其它部分可以由字符、下划线( _ )、数字(0-9)组成。
  • 标识符名称区分大小写。例如, myname 和 myName 是不相同的。
  • 请注意类似如下的都是无效的标识符名称:2dogs , this is a pig, my-name 和 >a1b2_c3 。
  • 以上所说的字母或字符包括:大写 ASCII 字符或小写 ASCII 字符或 Unicode 字符。

标识符之命名的规范

  • 有含义地命名。如:name_1,而不是:n1
  • 原则上遵守驼峰命名法:构成名称的每个单词的首字母大写。
  • 类名:严格遵守驼峰命名法,首字母一律大写。如:MyName。
  • 方法名:第一个首字母小写,其他大写。例如, myName 。
  • 变量名:全部小写。如:myname 。

上述的命名规范并不强制,但它们是个值得养成的好习惯。

概念2:对象

Python语言认为,一切皆对象。它将程序中的任何内容统称为 对象(Object)。这是一般意义上的说法。

我们在讨论python编程的时候,要习惯说“某某对象(object)”,而不是“某某东西(something)”。

我们前面已经提到,python是面向对象的编程语言,这里再强调:Python 是强面向对象的,这里的“强”,一方面是指一切皆对象, 包括数字、字符串与函数;一方面也是指强类型,后面我们马上会看到对象的强类型对变量的影响力。

概念3:数据类型

变量可以将各种形式的值保存为不同的数据类型(Data Type)。基本的类型就是我们刚刚讨论过的数字(整数和浮点数)与字符串。当然,还有很多类型,这对于有过其他语言经验的同学,并不陌生。在后面的课时,我们都会逐一涉及到。甚至,我们会了解如何通过(Class) 类,创建我们自定义的类型。

PS:有其他语言经验的同学,可以关注一下这个讨论:

变量究竟有没有类型?网上很多说python是弱类型的语言,主要是因为python在定义一个变量时无需声明变量的类型。也有人用类型是否可以隐式转换来衡量是否是弱类型,但其实,对于python来说,这些都不准确。事实上,因为python是强对象类型的,python的任何对象都必须明确申明类型,而变量只是对对象的一个引用。在内存中,每一个对象都包含了两个头部信息,一个是类型标示符,标识这个对象的类型;一个是引用计数器,用来标识该对象被多少变量引用,如果没有变量引用,将被回收。所以,变量本身没有类型,只有对象才有类型,但是一旦对象被变量引用成功,它便有了类型。所以,变量是动态类型。这就是为什么在python中,定义变量无需声明类型的原因。

变量的定义

到此,我们终于可以讨论变量的定义了。

定义变量:在声明一个变量标示符的同时,为该变量赋一个确定的值。

变量的定义过程实际上实现了四件事:

1、声明了一个标识符;

2、引用了一个对象;

3、为该变量赋了一个值;

4、明确了该变量的当前值的类型。

例如:x = 5

这个式子定义了一个变量,它看起来极其简单,但它明确地做了以下4件事:

(1)、它声明了一个标识符 x;

(2)、引用了一个对象:即字面常量(数字)5;

(3)、为该变量 x 赋了一个值,让 它等于5。注意:这里“=”号是赋值符号;

(4)、明确了变量 x 的当前值的类型是整数类型。

小结

这一节,我们介绍了Python语言的两个最基本的语法概念:常量和变量。

1、常量(数字、字符串)是不可变的。

2、变量可以是任何类型,这依赖于它引用了什么样的对象,因此,它是动态类型。

3、了解了标识符及其命名规范。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-06-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 高渡号外 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档