跳转至

Python 初印象

Python2 和 Python3

Python 的历史可以追溯到1989年,由荷兰计算机科学家 Guido van Rossum 在圣诞节假期时开始开发一种新的编程语言。他最初的想法是创建一种易于阅读、易于学习的语言,同时具有与 C 语言一样的能力。在经过多年的发展和完善后,Python 成为了一种非常受欢迎的编程语言。2000年,Python 2.0 发布;Python 2.x 系列一直持续到 2020 年,发布了 Python 2.7.18 版本作为最终版本。

2008年,Python 3.0 发布,引入了一些不兼容的改变,如 print变成了 print() 、除法运算符 / 的行为改变等。这些改变是为了解决 Python 2.x 系列中存在的一些设计缺陷。Python 3.x 系列逐渐成为主流版本,目前最新的版本是 Python 3.11。

大家可以看到,Python 2 和 Python 3 的开发周期是有重叠的,而且 特别要强调 这两个版本的 Python 是不兼容的,这个和大家之前学习的 C / C++ 向下兼容不太一样。

Python 的优势

  • 简单易学:Python 语法简单,容易上手;代码可读性好,结构清晰,因此,Python 常常作为非计算机专业的人员所使用的编程语言,可以方便、快捷地协助完成其他领域的科研工作;同时,也作为编程启蒙的语言存在。

  • 解释型语言:Python 是一种解释型语言,可以直接运行代码,无需编译。这使得 Python 的开发和调试过程更加快速和方便。大家目前可能没有体会,但是当你遇到了一些比较大的项目的时候,编译就会是一个耗时极长的过程,而且如果出现了错误,很可能整个程序直接崩溃,也不方便于定位错误;解释型语言在这方面就好得多。

  • 强大的库:Python 自带了很多标准模块和库,如 re(正则表达式)、os(操作系统接口)等;同时,Python 社区庞大活跃,有很多优秀的第三方库和框架,如 NumPy、pandas、Django、Flask 等,这些库可以帮助程序员更快速、更方便地实现各种功能,提高开发效率。例如,想要实现一个最基本的网页服务器,Django 只需要半小时,而用 C 来写....🤡

什么是解释型语言

解释型语言每次执行程序都需要一边转换一边执行,用到哪些源代码就将哪些源代码转换成机器码,用不到的不进行任何处理。每次执行程序时可能使用不同的功能,这个时候需要转换的源代码也不一样。

相比于编译型语言,解释型语言几乎都能跨平台,__“一次编写,到处运行”__是真实存在的。也就是说,可以轻松实现在 Windows 上编写 Python 源代码,然后丢到 Linux 上去运行,__只要双方配置了相同的解释器环境__即可。

Python 绑定

相信这个问题会在大家的日常开发中经常出现:

Bash
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
 bash hypatia_run_tests.sh
Hypatia: test

It is highly recommend you use a recent Linux operating system (e.g., Ubuntu 20 or higher).
Python version 3.7+ is required.

Running tests for satgenpy...
run_tests.sh: line 4: python: command not found

❯ python3 --version
Python 3.10.12

❯ python --version
-bash: python: command not found

明明我都有Python,版本还是3.10.12,为什么 python --version 却没有显示呢?

这通常是因为许多现代 Linux 发行版(如 Ubuntu 22)不再默认使用 Python 2.x,并且 python 命令可能没有指向 python3

可以通过创建一个符号链接,让 python 命令指向 python3,来解决这个问题。可以使用以下命令:

Bash
1
sudo ln -s /usr/bin/python3 /usr/bin/python

执行完这个命令后,python 命令应该就能正常工作,并指向 Python 3。你可以通过运行以下命令来验证:

Bash
1
python --version