likes
comments
collection
share

【Python】基础语法1(常量与表达式、变量和类型、注释)

作者站长头像
站长
· 阅读数 16

1. 常量与表达式

我们可以把Python当成一个计算器,来进行一些算术运算

print(1 + 2 - 3)
print(1 + 2 * 3)
print(1 + 2 / 3)

【Python】基础语法1(常量与表达式、变量和类型、注释)

分析:

  • print 是一个 Python 内置的函数,后面会做详细介绍。
  • 可以使用 + - * / ( ) 等运算符进行算术运算. 先算乘除, 后算加减。
  • 运算符和数字之间, 可以没有空格, 也可以有多个空格. 但是一般习惯上写一个空格(比较美观)。

形如 1 + 2 - 3 这样是算式, 在编程语言中称为 表达式, 算式的运算结果, 称为 表达式的返回值。 其中 1 , 2 , 3 这种称为 字面值常量, + - * / 这种称为 运算符 或者 操作符

==注意: 熟悉 C / Java 的同学可能认为, 2 / 3 结果为 0 (小数部分被截断). 但是在 Python 中得到的结果则是一个小数. 更符合日常使用的直觉==。

示例 给定四个分数, 67.5, 89.0, 12.9, 32.2 , 编写代码, 求这四个分数的平均数

print( (67.5 + 89.0 + 12.9 + 32.2) / 4 )

【Python】基础语法1(常量与表达式、变量和类型、注释)

2. 变量和类型

2.1 变量是什么

有的时候, 我们需要进行的计算可能更复杂一些, 需要把一些计算的中间结果保存起来. 这个时候就需要用到 变量。 ==变量可以视为是一块能够容纳数据的空间. 这个空间往往对应到 "内存" 这样的硬件设备上==

示例 给定四个分数, 67.5, 89.0, 12.9, 32.2 , 编写代码, 求这四个分数的方差。 方差的计算过程:取每一项,减去平均值,计算平方,再求和,最后除以(项数-1)。

avg = (67.5 + 89.0 + 12.9 + 32.2) / 4
total = (67.5 - avg) ** 2 + (89.0 - avg) ** 2 + (12.9 - avg) ** 2 + (32.2 - avg) ** 2
result = total / 3
print(result)

【Python】基础语法1(常量与表达式、变量和类型、注释)

分析:

  • 在这个代码中, 就需要先计算这四个数字的平均值, 然后再计算方差. 这就需要把计算的平均值使用变量保存起来。
  • 代码中的 avg,total,result 均为变量。
  • ** 在 Python 中便是乘方运算。**2即为求平方。

2.2 变量的语法

(1)定义变量

代码示例:

a = 10

创建变量的语句非常简单,其中

  • a 为变量名。当我们创建多个变量的时候,就可以用名字来进行区分。
  • = 为赋值运算符,表示把 = 右侧的数据放到 = 左侧的空间中。

==变量命名要遵守一定的规则==

1. 硬性规则(务必遵守)

  • 变量名必须由数字,字母,下划线构成。不包含特殊字符。 例:a1是合法变量名 。1a,a*a都是非法变量名
  • 数字不能开头。
  • 变量名和 Python 的“关键字”重复。 例如:if 这种就是非法变量名
  • Python 中的变量名是大小写敏感的,区分大小写。 num 和 Num 是两个不同的变量名

2. 软性规则 (建议遵守)

  • 给变量命名的时候,尽量使用描述性的单词来表示,尽量通过名字表示出变量的作用。
  • 当我们使用一个单词描述不清的时候,可以使用多个单词来命名,不怕变量长,就怕变量的含义表示不清。 ① 驼峰命名:除了第一个首字母之外,后续每个单词的首字母都大写。 例:personInfo;totalCount ② 蛇形命名:单词之间使用下划线_来进行分隔。 person_info;total_count

(2)变量的使用 代码如下:

#读取变量
a = 10
print(a)

#修改变量
a = 20
print(a)

【Python】基础语法1(常量与表达式、变量和类型、注释)

注意: 在 Python 中, 修改变量也是使用 = 运算, 看起来和定义变量没有明显区别。 首次使用 = 对 a 进行设置时,这个过程是创建变量(初始化)。 后续对 a 使用 = 操作,则是相当于修改 a 的内容(赋值)。

当然也可以用一个变量赋值给另外一个变量 示例

a = 10
b = 20
a = b
print(a)
print(b)

【Python】基础语法1(常量与表达式、变量和类型、注释)

2.3 变量的类型

对于不同种类的变量作出区分,Python中的变量类型,不需要在定义变量的时候显示声明,而只是依靠初始化语句,根据初始化的值的类型来进行判断。

2.3.1整数

a = 10
print(type(a))

【Python】基础语法1(常量与表达式、变量和类型、注释)

注:type 和 print 类似, 也是 python 内置的函数. 可以使用 type 来查看一个变量的类型。 在 Python中 int 能够表示的数据范围是没有上线的(“无穷”的),Python 的 int 是可以根据表示的数据的大小自动扩容的。 因此,Python 这里就没有 long 这样的类型了,像 byte,short 这些类型在 Python 中也是不存在的。

2.3.2 浮点数

a = 0.5
print(type(a))

【Python】基础语法1(常量与表达式、变量和类型、注释)

注意: 和 C++ / Java 等语言不同, Python 的小数只有 float 一种类型, 没有 double 类型. 但是实际上 Python 的 float 就相当于 C++ / Java 的 double, 表示双精度浮点数。 相比于单精度浮点数, 双精度浮点数占用的内存空间更多, 同时表示的数据精度更高即可(大概精确到小数点后15位)。

2.3.3 字符串

a = 'hello'
print(type(a))

【Python】基础语法1(常量与表达式、变量和类型、注释)

Python 中使用 ' ' 或者 " " 引起来的, 称为 字符串. 可以用来表示文本。 因为Python中只有字符串类型,没有字符类型。所以 ' ' 或者 " " 都能表示字符串,'a' 这算是长度为1的字符串。

注意: 在 Python 中, 单引号构成的字符串和双引号构成的字符串, 没有区别. 'hello' 和 "hello" 是完全等价的。 因此,如果字符串里面包含了 " ",表示字符串就可以用 ' ' 引起来;如果字符串里面包含了 ' ' ,表示字符串就可以用 " " 引起来。如果字符里面同时包含了 " " 和 ‘ ’,Python中还有一种字符串使用三引号,表示 ''' ''' 或 """ """。

a = 'hello'
print(a)

a = "hello"
print(a)
print('''her 'name' is "mary" ''')

【Python】基础语法1(常量与表达式、变量和类型、注释)

可以使用 len 函数来获取字符串的长度

a = 'hello'
print(len(a))

【Python】基础语法1(常量与表达式、变量和类型、注释)

可以使用 + 针对两个字符串进行拼接

a = 'hello'
b = 'world'
print(a + b)

【Python】基础语法1(常量与表达式、变量和类型、注释) 字符串拼接就是把后面的字符串拼接到前一个字符串的末尾,得到一个更大的字符串(对于原来的字符串a和b是没有影响的)。==注意此处是两个字符串相加. 不能拿字符串和整数/浮点数相加==。

2.3.4 布尔

布尔类型是一个特殊的类型, 取值只有两种, True (真) 和 False (假),因此,布尔类型主要用于逻辑判断。

a = True
print(type(a))
b = False
print(type(b))

【Python】基础语法1(常量与表达式、变量和类型、注释)

如果把布尔类型的值和整数进行算术运算,此时会把 True 当做1,把 False 当作0,但是这样的操作是没有意义的。

a = 10 + True
print(a)
b = 10 + False
print(b)

【Python】基础语法1(常量与表达式、变量和类型、注释)

2.3.5 其他

除了上述类型之外, Python 中还有 list, tuple, dict, 自定义类型 等等. 我们后续再介绍

2.4 变量类型的意义

1. 不同的类型,占用的内存空间是不同的,占几个字节(byte)

  • int 类型在内存中默认4字节,在Python中可动态扩容
  • float 类型在内存中固定是8字节
  • bool 类型在内存中是2字节

2. 不同的类型,对应能进行的操作也是不用的 例如:int / float 类型的变量,可以进行 + - * / 等操作。 而 str 类型的变量,只能进行 + (并且行为是字符串拼接),不能进行 - * / ,但是还能使用 len 操作。

2.5 动态类型特性

在 Python 中, 一个变量是什么类型, 是可以在 "程序运行" 过程中发生变化的. 这个特性称为 "动态类型"。

a = 10
print(type(a))
a = 'hello'
print(type(a))

【Python】基础语法1(常量与表达式、变量和类型、注释)

  • 在程序执行过程中, a 的类型刚开始是 int,后面变成了 str。
  • C++/Java这样的语言则不允许这样的操作,一个变量定义后类型就是固定的,这种特性称为“静态类型”。
  • 一个编程语言,是否是动态类型,知识取决于运行时,类型是否发生改变,不却决于变量定义的时候是否声明类型。 Python 作为动态类型的语言,在定义变量的时候,也是可以写类型的。
a:int=10
print(type(a))

【Python】基础语法1(常量与表达式、变量和类型、注释)

动态内存是一把双刃剑

  • 对于中小程序,可以大大的约代码量简约代码量(比如写一段代码就可以同时支持多种类型)。
  • 对于大型程序,则提高了模块之间的交互成本(程序员A提供的代码难以被程序员B理解)。

3. 注释

注释是什么? 注释是一种特殊的代码,他不会影响程序的执行,但是能够起到解释说明的作用,能过帮到程序员理解程序代码的执行逻辑。

# 计算 4 个数字 67.5, 89.0, 12.9, 32.2 的方差
avg = (67.5 + 89.0 + 12.9 + 32.2) / 4
total = (67.5 - avg) ** 2 + (89.0 - avg) ** 2 + (12.9 - avg) ** 2 + (32.2 - avg)** 2
result = total / 3
print(result)

形如上述代码, 如果没有注释, 直接阅读, 是不容易 get 到代码的含义是计算方差. 但是通过加了一行注释解释一下, 就让人一目了然了。

3.1 注释的语法

在 Python 中注释有两种风格

(1)注释行 使用 # 开头的是行注释 如有需要多行注释则可以选中代码然后按 Ctr l+ /,取消注释也是按 Ctrl + /

#这是一行注释

(2)文档字符串 使用三引号引起来的就称为”文档字符串“,也可以视为是一种注释。

  • 可以包含多行的内容
  • 一般放在文件/函数/类 的开头
  • """ 或者 ''' 均可(等价)
"""
这是文档字符串
这是文档字符串
这是文档字符串
"""

3.2 注释的规范

  1. 内容准确: 注释内容要和代码一致, 匹配, 并在代码修改时及时更新.
  2. 篇幅合理: 注释既不应该太精简, 也不应该长篇大论.
  3. 使用中文:
  4. 积极向上: 注释中不要包含负能量

本章到这里就结束啦,如果有哪里写的不好的地方,请指正。 如果觉得不错并且对你有帮助的话请给个三连支持一下吧! Fighting!!!✊