【Python】基础知识

【Python】基础知识

关键字

查看Python关键字:

>python

>>>import keyword

>>>keyword.kwlist

注释

注释有两方面作用:

(1)提高程序的可读性(最重要的作用);

(2)调试程序,注释掉可能出问题的代码。

合理的代码注释应该占源代码的1/3左右

注释可以插入到除标识符和字符串中间的任何位置

Python解释器会忽略注释的内容

注释的两种形式:

(1)单行注释:井号"#";

(2)多行注释:三个单引号或三个双引号(该处存在疑问,和字符串的区别)。

变量

Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

Python是一门弱类型语言,这包含两方面的含义:

(1)变量无需声明即可使用,或者说对从未用过的变量赋值就是声明了该变量;

(2)变量的数据类型可以随时改变。

标识符:合法的名字,给变量、类、方法命名。

命名规则:

(1)必须以字母、下划线开头;

(2)后面可以跟任意数目的字母、数字、下划线;

(3)字母可以包含英文字母,中文字符,日文字符等UTF-8所能表示的多种语言字符;

(4)标识符不能是Python关键字,不建议是内置函数;

可以通过使用del语句删除单个或多个对象。例如:

del var_a, var_b

数据类型

Python3 中有六个标准的数据类型,内置的 type() 函数可以用来查询变量所指的对象类型,还可以用 isinstance 来判断,例如isinstance(a, int)。

Number(数字)------不可变

String(字符串)------不可变,特殊的元组

Tuple(元组)------不可变,()

List(列表)------可变,\[\]

以上三个都属于Sequence(序列)

Set(集合)------可变

Dictionary(字典)------可变

注意:

type()不会认为子类是一种父类类型,isinstance()会认为子类是一种父类类型。

bool 是 int 的子类,True 和 False 可以和数字相加, True1、False0 会返回 True,但可以通过 is 来判断类型。例如:

>>> True==1

True

>>> False==0

True

>>> True+1

2

>>> False+1

1

Number(数字)类型

int(整型):如1,只有一种整数类型,表示长整型,没有Python2中的Long

bool(布尔型):如True

float(浮点型):如1.23,3E-2

complex(复数):1+2j,1.1+2.2j

String(字符串)

python中单引号和双引号使用完全相同,三引号('''或""")可以指定多行字符串

反斜杠可以用来转义,使用r可以让反斜杠不发生转义。。 如 r"this is a line with \n" 则\n会显示,并不是换行。这里的 r 指 raw,即 raw string。

Python 没有单独的字符类型,一个字符就是长度为 1 的字符串。

字符串的截取的语法格式如下:变量头下标:尾下标:步长

运算符

运算符 + 操作数 = 表达式

开发环境

安装

python.exe,Python的解释器 + 配套文件

Python交互式解释器

Python解释器有CPython、IPython、Jython、PyPy 等,顾名思义:

CPython 就是用 C 语言开发的了,是官方标准实现,拥有良好的生态,所以应用也就最为广泛了。

IPython 是在 CPython 的基础之上在交互式方面得到增强的解释器(http://ipython.org/)。

Jython 是专为 Java 平台设计的 Python 解释器(http://www.jython.org/),它把 Python 代码编译成 Java 字节码执行。

PyPy 是 Python 语言(2.7.13和3.5.3)的一种快速、兼容的替代实现(http://pypy.org/),以速度快著称。

多平台

Python3 可应用于多平台包括 Windows **、Linux** 和 Mac OS X**。**

Unix (Solaris, Linux, FreeBSD, AIX, HP/UX, SunOS, IRIX, 等等。)

Win 9x/NT/2000

Macintosh (Intel, PPC, 68K)

OS/2

DOS (多个DOS版本)

PalmOS

Nokia 移动手机

Windows CE

Acorn/RISC OS

BeOS

Amiga

VMS/OpenVMS

QNX

VxWorks

Psion

Python 同样可以移植到 Java 和 .NET 虚拟机上。

脚本执行前提

(1)有执行权限:chmod +x hello.py

(2)Python file.py

其他

直接在命令行输入python即可进入交互式编程模式

脚本第一行的 #!/usr/bin/python 的解释

脚本语言的第一行,只对 Linux/Unix 用户适用,用来指定本脚本用什么解释器来执行。

有这句的,加上执行权限后,可以直接用 ./ 执行,不然会出错,因为找不到 python 解释器。

#!/usr/bin/python 是告诉操作系统执行这个脚本的时候,调用 /usr/bin 下的 python 解释器。

#!/usr/bin/env python 这种用法是为了防止操作系统用户没有将 python 装在默认的 /usr/bin 路径里。当系统看到这一行的时候,首先会到 env 设置里查找 python 的安装路径,再调用对应路径下的解释器程序完成操作。

#!/usr/bin/python 相当于写死了 python 路径。

#!/usr/bin/env python 会去环境设置寻找 python 目录,可以增强代码的可移植性,推荐这种写法。

相关推荐
CyrusYiVPP19 分钟前
手写 MCP Server:给问答机器人接上本地文件工具,Python 实战第 13 期
人工智能·python
特立独行的猫A1 小时前
cj-tauri:用仓颉写桌面与鸿蒙 PC 应用
java·后端·python
qq_158895411119 小时前
AI 音乐生成完成后,音频 URL 为什么会过期?一套可恢复的交付方案
python·api·ai音乐
Warson_L11 小时前
高性能架构设计
python·go
databook12 小时前
新数据到手,先跑哪几步检查
python·数据分析
czq_268671948712 小时前
Python打卡第46天
开发语言·python
Flynt14 小时前
日涨4000星的OSINT工具,我拿Linus的用户名和一个随机字符串实测了一遍
python·安全
曲径海盗16 小时前
【Python 学习第 53 天】列表基础
python·学习笔记·编程入门
Dumbness16 小时前
群里 @ 机器人发"查订单",指令一条都没命中:微信群机器人在路由前漏掉的几步归一化
python·微信
用户16148409554517 小时前
用 M4 Pro 跑羽毛球视频 AI 分析(二):TrackNet MPS 加速 3.2 倍、卡尔曼滤波补漏与自动回合剪辑
python