python编程基础
1 python的基本语法格式
1.1 python文件的第一行代码
- 通常在脚本语言的第一行会看到:
#!/usr/bin/env python(推荐)
或
#!/usr/bin/python
- 首先要确定的一点是它不是注释。
- 这两句话的目的都是指出你的python文件用什么可执行程序去运行它。
- 在 Windows 下可以不写第一行注释。
1.2 python中的标识符
- 第一个字符必须是字母表中字母或下划线_。
- 标识符的其他的部分由字母、数字和下划线组成。
- 标识符对大小写敏感。
1.3 python的保留字
- 保留字即关键字,我们不能把它们用作任何标识符名称。
- python 的标准库提供了一个keyword模块,可以使用如下命令输出当前版本的所有关键字:
import keyword
print(keyword.kwlist)
1.4 同一行显示多条语句
- 可以在同一行中使用多条语句,语句之间使用分号
;
分割。
print('123');print('456');print('789')
1.5 多行语句
- 通常是一行写完一条语句,但如果语句很长,我们可以使用
反斜杠\
来实现多行语句。
print('123 \
456 \
789')
- 在 [], {}, 或 () 中的多行语句,不需要使用
反斜杠\
。
2 python的注释
2.1 单行注释
单行注释以#开头
# 单行注释
2.2 多行注释
- 使用多个 # 号,组成多行注释(不规范)
# 多行
# 注释
- 使用’‘’ ‘’'号(不推荐使用)
'''
多行
注释
'''
- 使用"“” “”"号(推荐使用)
"""
多行
注释
"""
3 python的代码块
3.1 python的行与缩进
- python最具特色的就是使用缩进来表示代码块,不需要如java语言那样使用大括号{} 表示代码块。
- 在其他语言中,通常推荐使用Tab键添加代码缩进,以增加代码可读性。
- 但是在Python中,不推荐使用Tab键添加代码缩进,而是使用空格键添加代码缩进!!!
- 在python脚本中,空格被替换为制表符(Tab)可能会导致以下问题:
- 代码格式不一致
- python非常依赖代码的缩进来进行语句块的划分。
- python中同一个代码块内的语句必须使用相同数量的空格进行缩进,而混合使用空格和制表符会使得代码格式变得不一致,影响代码的可读性和维护性。
- IndentationError错误:
- 当一个代码块内部混用了空格和制表符进行缩进时,解释器会抛出
IndentationError
。这是因为Python解释器无法准确判断语句块的边界,从而无法正确解析代码结构。
- 违反PEP 8规范
- PEP 8是Python的官方编码风格指南,它推荐使用空格而非制表符进行缩进,并且建议每个缩进级别使用4个空格。遵循PEP 8可以使代码更易于阅读和维护。不遵循这些规则可能会使其他开发者阅读你的代码时感到困惑。
- 团队协作问题
- 在团队开发环境中,成员间使用的IDE或编辑器对空格和制表符的处理可能存在差异。如果不统一使用空格作为缩进,可能会在合并代码时引入难以发现的格式问题,增加解决冲突的难度。
- 自动化工具和Linter报错:
- 很多代码质量检查工具(如Flake8、Pylint)以及代码格式化工具(如Black、autopep8)默认按照PEP8的规范来检查和格式化代码。它们可能会因为发现空格和制表符混用而报告错误或警告,要求修正。
- 因此,为了保持代码的一致性、可读性和避免潜在的运行时错误,建议在Python编程时始终使用空格进行缩进,并且保持缩进的一致性。
- 如果需要转换现有代码中的缩进,大多数现代代码编辑器都提供了相关的功能来批量将制表符转换为空格,或者按PEP 8标准格式化代码。
4 print 输出语句
- 在python中,向控制台输出使用print 输出语句,类似与java中的System.out.println语句。
- print 输出语句可以用于输出字符串或者数字等
- print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=‘’
print("hello")
print("hello1",end='\n')
print("hello2",end='---')
print("hello3",end='')
print("hello4")
4.1 多参数输出
print(123,"hello","1,2,3",True,False)
4.2 运算
print(1+3,3*6)
print(10/3)
print(10%3)
print("hello" + "world")
print("hi"*3)
4.3 输出空行
print(1)
print()
print(2)
print('')
print(3)
4.4 分隔符
默认分隔符是空格
print(1,2,3)
print(1,2,3,sep='$-$')
# \t制表符
print(1,2,3,sep='\t')
4.5 实现格式化输出
- 类似于 C/C++ 的printf,python的print也能实现格式化输出,方法是使用%操作符,它会将左边的字符串当做格式字符串,将右边的参数代入格式字符串。
- 格式字符串中,不同占位符的含义:
- %s: 作为字符串
- %d: 作为有符号十进制整数
- %u: 作为无符号十进制整数
- %o: 作为无符号八进制整数
- %x: 作为无符号十六进制整数,a~f采用小写形式
- %X: 作为无符号十六进制整数,A~F采用大写形式
- %f: 作为浮点数
- %e,%E: 作为浮点数,使用科学计数法
- %g,%G: 作为浮点数,使用最低有效数位
print("100+200=",100+200)
print("100+200=%d" % (100+200))
print("10/3=%d" % (10/3))
- 也可以带入多个参数,需要用() 包裹代入的多个参数,参数与参数之间用逗号隔开,参数的顺序应该对应格式字符串中的顺序。
print("100.1+200.2=%d 100.1+200.2=%f" % (100.1+200.2,100.1+200.2))
print("姓名:%s 性别:%s" % ("周","男"))
print("八进制:3+6=%o 十六进制:3+9=%x" % (3+6,3+9))