【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 目录,可以增强代码的可移植性,推荐这种写法。

相关推荐
哇咔咔哇咔26 分钟前
【科普】conda、virtualenv, venv分别是什么?它们之间有什么区别?
python·conda·virtualenv
CSXB991 小时前
三十四、Python基础语法(文件操作-上)
开发语言·python·功能测试·测试工具
亚图跨际2 小时前
MATLAB和Python及R潜变量模型和降维
python·matlab·r语言·生物学·潜变量模型
IT古董2 小时前
【机器学习】决定系数(R²:Coefficient of Determination)
人工智能·python·机器学习
德育处主任Pro2 小时前
『Django』APIView基于类的用法
后端·python·django
Star Patrick2 小时前
算法训练(leetcode)二刷第十九天 | *39. 组合总和、*40. 组合总和 II、*131. 分割回文串
python·算法·leetcode
武子康3 小时前
大数据-213 数据挖掘 机器学习理论 - KMeans Python 实现 距离计算函数 质心函数 聚类函数
大数据·人工智能·python·机器学习·数据挖掘·scikit-learn·kmeans
写点什么啦3 小时前
使用R语言survminer获取生存分析高风险和低风险的最佳截断值cut-off
开发语言·python·r语言·生存分析·x-tile
武子康3 小时前
大数据-214 数据挖掘 机器学习理论 - KMeans Python 实现 算法验证 sklearn n_clusters labels
大数据·人工智能·python·深度学习·算法·机器学习·数据挖掘
封步宇AIGC4 小时前
量化交易系统开发-实时行情自动化交易-Okex K线数据
人工智能·python·机器学习·数据挖掘