Python 入门基础教程
1. Hello World
安装完 Python 之后,打开 IDLE(Python GUI),该程序是 Python 语言解释器,你写的语句能够立即运行。
本文介绍 Python 基础语法与核心概念,涵盖安装配置、字符串处理、列表操作、条件循环、函数定义、文件读写、异常处理、类与继承以及包管理机制。通过实际代码示例演示如何编写脚本、管理模块路径及进行面向对象设计,帮助初学者快速掌握 Python 编程技能并应用于实际开发场景。

安装完 Python 之后,打开 IDLE(Python GUI),该程序是 Python 语言解释器,你写的语句能够立即运行。
我们写下一句著名的程序语句:
print("Hello world")
并按回车,你就能看到这句被 K&R 引入到程序世界的名言。在解释器中选择"File"–'New Window'或快捷键 Ctrl+N,打开一个新的编辑器。
写下如下语句:
print("Hello world")
保存为 a.py 文件。按 F5,你就可以看到程序的运行结果了。这是 Python 的第二种运行方式。找到你保存的 a.py 文件并双击也可以看到程序结果。Python 的程序能够直接运行,对比 Java,这是一个优势。
我们换一种方式来问候世界。新建一个编辑器并写如下代码:
print("你好,世界")
在你保存代码的时候,Python 会提示你是否改变文件的字符集,建议将字符集改为我们更熟悉的形式(如 UTF-8)。程序一样运行良好。
用微软附带的计算器来计数实在太麻烦了。打开 Python 解释器,直接进行计算:
>>> 1 + 2
3
>>> 10 * 5
50
>>> 100 / 4
25.0
可以如下打印出预定义输出格式的字符串:
s = "Hello"
print(s)
字符串是怎么访问的?请看这个例子:
text = "Python"
print(text[0]) # 输出 P
print(text[-1]) # 输出 n
请注意 ASCII 和 UNICODE 字符串的区别:在 Python 3 中,默认字符串类型即为 Unicode,无需显式区分。但在处理二进制数据时需注意编码问题。
类似 Java 里的 List,这是一种方便易用的数据类型:
my_list = [1, 2, 3, "four"]
my_list.append(5)
print(my_list) # [1, 2, 3, 'four', 5]
列表支持切片操作:
print(my_list[1:3]) # [2, 3]
x = 10
if x > 5:
print("X is greater than 5")
else:
print("X is less than or equal to 5")
for i in range(5):
print(i)
While 循环示例:
count = 0
while count < 5:
print(count)
count += 1
def greet(name):
return f"Hello, {name}"
print(greet("User"))
并且,介绍一个方便好用的函数:
help(len)
with open('test.txt', 'w') as f:
f.write("Hello File")
with open('test.txt', 'r') as f:
content = f.read()
print(content)
try:
result = 10 / 0
except ZeroDivisionError:
print("Cannot divide by zero")
finally:
print("Execution finished")
class Animal:
def speak(self):
pass
class Dog(Animal):
def speak(self):
return "Woof"
dog = Dog()
print(dog.speak())
每一个 .py 文件称为一个 module,module 之间可以互相导入。请参看以下例子:
import math
print(math.sqrt(16))
Module 可以定义在包里面。Python 定义包的方式稍微有点古怪,假设我们有一个 parent 文件夹,该文件夹有一个 child 子文件夹,child 中有一个 module a.py。
如何让 Python 知道这个文件层次结构?很简单,每个目录都放一个名为 _init_.py 的文件。该文件内容可以为空。
这个层次结构如下所示:
parent/
├── __init__.py
└── child/
├── __init__.py
└── a.py
那么 Python 如何找到我们定义的 module?在标准包 sys 中,path 属性记录了 Python 的包路径。你可以将之打印出来:
import sys
print(sys.path)
通常我们可以将 module 的包路径放到环境变量 PYTHONPATH 中,该环境变量会自动添加到 sys.path 属性。另一种方便的方法是编程中直接指定我们的 module 路径到 sys.path 中:
import sys
sys.path.append('/path/to/module')
你会发现这个教程相当的简单。许多 Python 特性在代码中以隐含方式提出,这些特性包括:Python 不需要显式声明数据类型,关键字说明,字符串函数的解释等等。
一个熟练的程序员应该对这些概念相当了解,这样在你挤出宝贵的一小时阅读这篇短短的教程之后,你能够通过已有知识的迁移类比尽快熟悉 Python,然后尽快能用它开始编程。当然,1 小时学会 Python 颇有哗众取宠之嫌。
确切的说,编程语言包括语法和标准库。语法相当于武术招式,而标准库应用实践经验则类似于内功,需要长期锻炼。Python 学习了 Java 的长处,提供了大量极方便易用的标准库供程序员"拿来主义"。(这也是 Python 成功的原因)。但不管怎样,至少你现在会用 Python 代替繁琐的批处理写程序了。希望那些真的能在一小时内读完本文并开始使用 Python 的程序员会喜欢这篇小文章,谢谢!

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online