【Python】1. 基本语法元素

一、数据类型

1. 基本类型:数字、字符串、布尔

1.1 数字类型

  • int 整型 整数

    1
    2
  • float 浮点型 带小数的数

    1
    2
    2.5
    #2.0虽然数值上与2相等,但其为浮点数,与上一代码段中的2的数据类型不一样
  • complex 复数 $a+bj$

    1
    3+4j

1.2 字符串类型

  1. str 字符串 视作文本
  2. 组成:由数字、字母、空格、其他字符组成
  3. 表达:用’ ‘或” “
1
"Python-#Double S"

1.3 布尔类型

bool 布尔类型

主要用于逻辑运算

1
2
y = 2 > 1
print(y)

上述数据类型均可定义单个数据,但面对多组数据,需要利用组合类型

2. 组合类型:列表、元组、字典、集合

2.1 列表(有序)

list 列表 序列类型:数据有位置顺序

表示方式:[data1,data2…]

1
2
3
a = [1,2,3,4,5]
a[0]#读取a列表中第一个元素
a[-1]#读取a列表中最后一个元素

2.2 元组

tuple 元组 序列类型

表示方式:(data1,data2…)

元素不可修改,即不可变列表

1
2
b = (1,2,3,4,5)
b[0]#读取b元组第一个元素

2.3 字典

dict 字典 映射类型:通过”键”-“值”的映射实现数据的存储和查找

表示方式:{key1:value1,key2:value2…}

1
2
student = {0601016:"小石", 0601015:"小刘", 0601014:"小卢"}
student[0601015]#与list和tuple不同,dict通过key读取元素

字典是在内部是无序的

2.4 集合

set 集合 一系列互不相等元素的集合,无序的

表示方式:{data1,data2…}

1
2
student = {"小石","小刘","小卢","小刘"}
print(student)#虽然多打了一个小刘,但是set中元素互不相等且无序,故只输出前三者

我们一般通过变量来引用这些数据

二、变量

1. 变量的概念

量:实实在在的对象,如数据、抽象

变:可变性:增、删、查、改等

变量定义二要素:变量名,赋值

1
x = 1

2. 变量的命名

2.1 哪些可以做变量名?

大写字母、小写字母、数字、下划线、汉字及其组合

严格区分大小写

1
2
3
Double_S_is_a_小白 = Ture
double_s_is_a_小白 = False
#Python严格区分大小写,上述是两个变量

2.2 哪些情况不允许做变量名?

首字符不允许为数字

变量名中间不能有空格

不能与Python中33个保留字相同

2.3 变量名定义技巧

尽量有实际意义,表征数据的某种特性

1
2
age_of_students = [17,18,19]
#比单独字母a = [17,18,19]更加清晰,增强可读性

下划线 (推荐变量和函数名) 变量名由多个单词组成:用_连接多个单词

驼峰体 (推荐类名)变量名由多个单词组成:单词首字母大写

尽量避免中文或拼音做变量名

特殊变量:常量 (不变的量 如:$\pi,e$)变量所有字母均大写

1
MAX_ITERATION = 1000

3. 变量的赋值

3.1 一般赋值

通过等号自右向左赋值

1
2
x = 1+2#先计算1+2=3,再将结果赋值给x
print(x)

3.2 增量赋值

1
2
3
4
x = 10
x = x+10
print(x)
x += 10#x=x+10简写,更常用

3.3 打包赋值

同时对多个变量赋值

1
2
3
4
x, y = 1, 2
print(x, y)
x, y = y, x#Python一行代码即可实行互换
print(x, y)

三、控制流程

1. 顺序流程

自上而下依次执行

【例】实现1到5的整数求和

1
2
3
4
5
6
7
8
#res = 1+2+3+4+5
res = 0 #赋初值
res += 1
res += 2
res += 3
res += 4
res += 5
print(res) #显示结果

2. 循环流程——遍历循环(for)

主要形式:

for 元素 in 可迭代对象:

​ 执行语句

执行过程:从可迭代对象中,依次取出每一个元素,并进行相应操作

【例】实现1到5的整数求和

1
2
3
4
res = 0
for i in [1,2,3,4,5]: #每次迭代,取出1个i
res += i #对每次迭代取出的i 进行相应操作
print(res) #遍历结束后,执行后续语句

3. 循环流程——无限循环(while)

主要形式:

while 判断条件:

​ 条件为真,执行语句

条件为假,while循环结束

【例】实现1到5的整数求和

1
2
3
4
5
6
i = 1
res = 0
while i <= 5: #若i不大于5,则循环继续
res += i
i += 1
print(res) #若循环条件不成立,循环停止,执行后续语句

4.分支流程(if)

最简单形式:

if 判断条件:

​ 条件为真,执行语句

else:

​ 条件为假,执行语句

1
2
3
4
5
age = 18
if age > 22:
print("可以结婚啦")
else:
print("再等等吧")

下面,我们了解控制流程后,再回过头看看如何输入输出

四、输入输出

1. 数据从何而来?

1.1 外部文件导入

从本地硬盘、网络端读入等

后续会详细讲解

1.2 程序中定义

1
2
age = 18
name = "Tom"

1.3 动态交互输入 input

在程序运行过程中进行输入(此时输入数据为字符串形式)

1
2
x = input("请输入一个数字:")#此时输入数据为字符串形式
print(x)

eval()去掉引号

1
2
3
x = eval(input("请输入一个数字:"))
y = eval(input("请输入一个数字:"))
print(x+y)

2. 数据到哪儿去?

2.1 存储到本地硬盘和网络端

后续详细讲解

2.2 打印输出print

直接打印数据

1
print("我是DoubleS!")

打印变量

1
2
x = 1024
print(x)

PS:print默认换行

若不想换行,换行控制 end=

1
2
print(123, end=" ")
print(456)

有时,我们需要一些复杂输出:比如几个变量一起组合输出

1
2
3
PI = 3.1415926
E = 2.71828
print("PI = ", PI,"E = ", E)

2.3 格式化输出方法 format

基本格式:”字符{0}字符{1}字符”.format(v0, v1)

1
2
3
4
5
PI = 3.1415926
E = 2.71828
print("PI = {0}, E = {1}".format(PI, E))
#{}内数字代表format中对应数据,可自己调整顺序
#也可以不填,默认从0开始

填充输入

1
2
3
4
#_____3.1415926_____    进行填充
PI = 3.1415926
print("{0:_^20}".format(PI))
#^为数据居中,<为数据左对齐,>为数据右对齐

数字千分位分隔符

1
2
3
4
#显示1,000,000
print("{0:,}".format(1000000))
#若既要填充输出,又要千分位分隔符
print("{0:$>20,}".format(1000000))

浮点数简化输出

  • 留2位小数

    1
    2
    PI = 3.1415926
    print("{0:.2f}".format(PI))
  • 按百分数输出

    1
    print("{0:.1%}".format(0.818727))
  • 科学计数法输出

    1
    print("{0:.2e}".format(0.818727))

整数的进制转换输出

  • 十进制整数转二进制、unicode码、十进制、八进制、十六进制输出

    1
    print("二进制{0:b}, Uicode码{0:c}, 十进制{0:d}, 八进制{0:o}, 十六进制{0:x}".format(450))

综上,format用法总结:

“字符{0:修饰}字符{1:修饰}字符”.format(v1,v2)

严格按照顺序:

{x:<填充><对齐><宽度><,><.精度><类型>}

五、程序格式

增强可读性,使大量Python代码风格一致

1. 行最大长度

所有行限制的最大字符数为79

2. 缩进

  • 用缩进来表示语句间逻辑
  • 在 for while if def class等:之后下一行开始进行缩进,表明后续代码与前句之间的从属关系
  • 缩进量:4字符
1
2
3
for i in [1, 2, 3]:
print(i)
print("打印结束")

3. 使用空格

  • 二元运算符两边加一个空格

    1
    2
    3
    x = 2    #赋值
    x + = 4 #增量
    6 > 2 #比较
  • 使用不同优先级的运算符,考虑在最低级的运算符周围添加空格

    1
    2
    3
    x = x*2 - 1
    z = x*x + y*y
    c = (a+b) * (a-b)
  • 在逗号后使用空格

    1
    2
    x, y = 1, 2
    ls = [1, 2, 3]
  • 不要使用一个以上空格

4. 避免使用空格

  • 在制定关键字参数或者默认参数值的时候,不要在=附近加上空格

    1
    2
    def fun(n=1, m=2):
    print(n, m)

5. 注释

  • 单行注释
  • 格式: # 注释内容
  • 多行注释(”””)
1
2
3
4
5
6
a = 1    #我是单行注释
"""
我是
多行
注释
"""

以上,便是第一节基本语法元素内容

下一节内容为基本数据类型,将深入了解数字、字符串、布尔


【Python】1. 基本语法元素
http://example.com/2022/06/19/Python/【Python】1. 基本语法元素/
作者
DoubleS
发布于
2022年6月19日
许可协议