【Python】02.Python 的基础概念

一、常量和表达式

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

二、变量与类型

2.1 变量的定义

有的时候, 我们需要进行的计算可能更复杂一些, 需要把一些计算的中间结果保存起来. 这个时候就需要用到变量

变量可以视为是一块能够容纳数据的空间. 这个空间往往对应到 “内存” 这样的硬件设备上

2.2 变量的语法

2.2.1 定义变量

a = 10

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

注意: 变量的名字要遵守一定规则

  • 硬性规则

    • 变量名由 数字 字母 下划线 构成
    • 数字不能开头
    • 变量名不能和 “关键字” 重复
    • 变量名大小写敏感. num 和 Num 是两个不同的变量名
  • 软性规则

    • 变量名使用有描述性的单词来表示, 尽量表达出变量的作用
    • 一个变量名可以由多个单词构成, 长一点没关系, 但是含义要清晰
    • 当变量名包含多个单词的时候, 建议使用 “驼峰命名法”

2.2.2 使用变量

打印变量:

a = 10
print (a)

修改变量:

a=10
a=100

2.3 基本变量类型

变量里面存储的不仅仅是数字, 还可以存储其它种类的数据。为了区分不同种类的数据, 我们引入了 “类型” 这样的概念

注意: 和 C++ / Java 等语言不同, Python 变量的类型不需要显式指定, 而是在赋值的时候确定的

2.3.1 整数

a = 10
print(type(a))

注意: 和 C++ / Java 等语言不同, Python 的 int 类型变量, 表示的数据范围是没有上限的. 只要内存足够大, 理论上就可以表示无限大小的数据

2.3.2 浮点数

a = 0.5
print(type(a))

注意: 和 C++ / Java 等语言不同, Python 的小数只有 float 一种类型, 没有 double 类型. 但是实际上 Python 的 float 就相当于 C++ / Java 的 double, 表示双精度浮点数

2.3.2 字符串

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

使用 ’ ’ 或者 " " 引起来的,称为 字符串。可以用来表示文本

注意: 在 Python 中, 单引号构成的字符串和双引号构成的字符串, 没有区别. ‘hello’ 和 “hello” 是完全等价的
Python 中也没有字符类型,‘a’表示长度为一的字符串

2.3.4 布尔

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

布尔类型是一个特殊的类型, 取值只有两种, True (真) 和 False (假)

2.4 变量类型的意义

  1. 类型决定了数据在内存中占据多大空间
  2. 类型其实约定了能对这个变量做什么样的操作

总结: 类型系统其实是在对变量进行 “归类”. 相同类型的变量(数据) 往往具有类似的特性和使用规则

2.5 动态类型

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

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

C++/Java 这样的语言则不允许这样的操作. 一个变量定义后类型就是固定的了. 这种特性则称为 “静态类型”

三、注释

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

3.1 注释的语法

  • 注释行:使用 # 开头的行都是注释
  • 文档字符串:使用三引号引起来的称为 “文档字符串”, 也可以视为是一种注释
    • 可以包含多行内容
    • 一般放在 文件/函数/类 的开头
    • " " " 或者 ’ ’ ’ 均可 (等价)

3.2 注释的规范

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

四、输入与输出

用户把信息传递给程序的过程, 称为 “输入”;程序把结果展示给用户的过程, 称为 “输出”

输入输出的最基本的方法就是控制台。用户通过控制台输入一些字符串, 程序再通过控制台打印出一些字符串

4.1 控制台输出

Python 使用 print 函数输出到控制台

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

更多的时候, 我们希望能够输出的内容是混合了字符串和变量的:

# 输出num = 10
num = 10
print(f'num = {num}')
  • 使用 f 作为前缀的字符串, 称为 f-string
  • 里面可以使用 { } 来内嵌一个其他的变量/表达式.

4.2 控制台输入

python 使用 input 函数, 从控制台读取用户的输入

num = 0
num = input('请输入一个整数: ')
print(f'你输入的整数是 {num}')
  • input 的参数相当于一个 “提示信息”,也可以没有
  • input 的返回值就是用户输入的内容,是字符串类型

五、运算符

5.1 算数运算符

像 + - * / % ** // 这种进行算术运算的运算符, 称为 算术运算符

注意:

  1. / 中不能用 0 作为除数,否则会抛出异常
  2. 整数 / 整数 结果可能是小数,而不会截断
  3. ** 是求乘方。不光能算整数次方,还能算小数次方
  4. // 是取整除法。整数除以整数,结果还是整数(舍弃小数部分, 并向下取整。不是四舍五入)

5.2 关系运算符

像 < <= > >= == != 这一系列的运算符称为 关系运算符, 它们是在比较操作数之间的关系

  • 如果关系符合, 则表达式返回 True. 如果关系不符合, 则表达式返回 False
  • 关系运算符不光针对整数/浮点数进行比较, 还能针对字符串进行比较
  • 对于浮点数来说, 不要使用 == 判定相等

5.3 逻辑运算符

像 and or not 这一系列的运算符称为 逻辑运算符

a < b and b < c 这个操作等价于 a < b < c 。

和其他编程语言类似, Python 也存在短路求值的规则.

  • 对于 and, 如果左侧表达式为 False, 则整体一定为 False, 右侧表达式不再执行
  • 对于 or, 如果左侧表达式为 True, 则整体一定为 True, 右侧表达式不再执行

5.4 赋值运算符

  1. = 的使用
    = 表示赋值。注意和 == 区分;= 除了基本的用法之外, 还可以同时针对多个变量进行赋值

    # 链式赋值
    a = b = 10
    # 多元赋值
    a , b = b , a
    
  2. 复合赋值运算符
    Python 还有一些 复合赋值运算符. 例如 += -= *= /= %=

注意: 像 C++ / Java 中, 存在 ++ – 这样的自增/自减运算符. Python 中则不支持这种运算. 如果需要使用, 则直接使用 += 1 或者 -= 1

你可能感兴趣的:(Python,python,开发语言,笔记)