Python入门:从零开始写代码
Python入门:从零开始写代码
想象一下这样的场景:每个月底,你都要花上大半天时间,手动整理Excel表格、复制粘贴数据、生成报表。一遍遍重复着同样的操作,眼睛盯着屏幕,手指机械地点着鼠标。等到终于做完,整个人已经疲惫不堪。而如果你会Python,这些繁琐的工作可能只需要几分钟就能自动完成,剩下的时间你完全可以泡杯咖啡,看看窗外的风景。
这不是天方夜谭,而是Python办公自动化的真实魔力。在正式开始这段编程之旅前,让我们先认识一下这位即将陪伴你的“小伙伴”——Python。
初识Python:为什么是它
一门会说“人话”的编程语言
如果把编程语言比作和电脑沟通的方式,那么Python可能是其中最接近人类自然语言的一种。用英文写作时,我们说“print”(打印),Python就说“print”;说“如果”(if),Python就说“if”。这种“所见即所得”的设计理念,让Python成为最适合初学者的编程语言之一。
Python诞生于1991年,由荷兰程序员吉多·范罗苏姆(Guido van Rossum)创造。说到这个名字的由来,还挺有意思——范罗苏姆是英国喜剧团体“蒙提·派森”(Monty Python)的粉丝,所以给这门语言起名叫Python。虽然名字来源有些随意,但Python的发展却一点都不随意。
经过三十多年的发展,Python已经成为全球最受欢迎的编程语言之一。在各种编程语言排行榜上,Python始终名列前茅。根据专业编程社区Stack Overflow的调查,Python连续多年成为开发者最想学习的语言。这足以说明它的魅力和影响力。
Python能做什么
你可能会问:Python这么厉害,到底能做什么?答案是:几乎什么都行。
办公自动化是Python最接地气的应用场景。你可以轻松处理Excel表格,自动生成报表,一键整理文件,甚至批量发送邮件。想象一下,以前需要一个团队花一周时间完成的数据整理工作,现在你一个人用Python脚本几个小时就能搞定,而且准确率更高。
数据分析与可视化是Python的另一大强项。无论是处理销售数据、统计数据,还是做市场调研,Python都能让你事半功倍。它能快速处理海量数据,生成漂亮的图表,让你的报告更加专业和有说服力。
网页爬虫是Python的拿手好戏。如果你需要从网上批量获取信息,比如搜集竞品价格、采集新闻资讯、收集潜在客户信息,Python能帮你自动完成这些以前需要手动复制粘贴的工作。
网站开发也离不开Python。很多知名网站的后台都是用Python构建的,比如YouTube、Instagram、Dropbox等。学习Python后,你甚至可以自己搭建一个个人网站或博客。
当然,Python的本领远不止这些。人工智能、机器学习、自动化测试、游戏开发、树莓派编程……Python的身影无处不在。可以说,学好Python,就等于打开了一扇通往科技世界的大门。
为什么选择Python作为办公自动化的工具
在众多编程语言中,为什么我们偏偏选择Python来实现办公自动化呢?主要有以下几个原因:
语法简单,易学易用。Python的设计哲学强调代码的可读性和简洁性。相比其他语言,Python通常只需要更少的代码就能完成同样的功能。这意味着学习曲线更平缓,即使你是编程零基础,也能快速上手。
生态丰富,库超级多。Python最大的优势之一就是拥有庞大的第三方库生态系统。想处理Excel?有pandas、openpyxl。想操作Word文档?有python-docx。想发送邮件?有smtplib。想做数据分析?有NumPy、Matplotlib。这些库就像现成的工具箱,让你不用从零开始造轮子。
跨平台,通用性强。无论你用的是Windows系统、Mac系统,还是Linux系统,Python都能完美运行。一套代码,多平台使用,再也不用担心兼容性问题。
社区活跃,资源丰富。学习Python的过程中遇到任何问题,都能在互联网上找到答案。Stack Overflow上有海量的问答,CSDN、知乎上有无数中文教程,GitHub上有无数开源项目。遇到困难,总有人能帮你。
说了这么多,不如让我们赶紧开始动手。下一节,我会手把手教你安装Python环境,让你的电脑准备好迎接这位新伙伴。
搭建编程环境:让电脑准备好
在Windows系统上安装Python
Windows用户也别着急,让我们一步一步来。
首先,访问Python官方网站 www.python.org。在首页就能看到“Downloads”按钮,点击后会显示最新的Python版本。点击“Download Python 3.x.x”按钮(x代表具体的版本号),下载安装包。
下载完成后,双击运行安装包。这里有个重要的小技巧:一定要勾选"Add Python to PATH"选项!这个选项的意思是把Python添加到系统环境变量中,只有勾选了它,我们才能在命令提示符中直接运行Python。勾选之后,点击"Install Now"即可开始安装。
安装过程中会显示进度条,稍等片刻,安装完成后会显示"Successful Installation"(安装成功)的提示。点击"Close"关闭安装程序。
现在,让我们验证一下安装是否成功。按下键盘上的"Win + R"组合键,打开运行窗口,输入"cmd",回车,打开命令提示符。在命令行中输入:
``` python --version ```
如果显示类似"Python 3.11.4"这样的版本号,说明Python已经安装成功了!接下来再输入:
``` pip --version ```
pip是Python的包管理工具,我们之后安装各种库都要用到它。如果这里也显示了版本号,那就完美了。
在Mac系统上安装Python
Mac系统通常自带Python 2.x版本,但现在已经不推荐使用了。我们需要安装Python 3.x版本。
Mac用户可以通过两种方式安装Python:
方式一:官方网站下载安装包
访问 python.org,点击Downloads,然后点击"Download Python 3.x.x"。下载完成后,双击打开安装包,按提示完成安装即可。
方式二:使用Homebrew(推荐)
Homebrew是Mac上的一个包管理工具,非常方便。如果你还没有安装Homebrew,可以先在终端中输入:
``` /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" ```
Homebrew安装完成后,在终端中输入:
``` brew install python ```
等待安装完成,然后验证:
``` python3 --version pip3 --version ```
如果都能显示版本号,说明安装成功了。
认识Python的两种运行方式
安装好Python后,我们有两种方式来写代码和运行代码。
方式一:交互式解释器
打开命令提示符(Windows)或终端(Mac),输入`python`(Windows)或`python3`(Mac),回车。你会看到类似这样的界面:
``` Python 3.11.4 (tags/v3.11.4:d2340f9, May 3 2023, 10:07:06) [MSC v.1934 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> ```
三个大于号`>>>`是Python的提示符,表示Python正在等待你输入代码。你可以在这里输入一行代码,按回车,就会立即看到结果。这种方式非常适合做一些小的测试,或者学习新知识时快速验证想法。
输入`exit()`可以退出交互式解释器。
方式二:脚本文件
交互式解释器虽然方便,但代码不会保存。实际工作中,我们通常会把代码写成脚本文件,后缀名是`.py`。
比如,你可以用记事本(Windows)或TextEdit(Mac)创建一个新文件,输入代码,然后保存为`hello.py`。之后在终端中运行:
``` python hello.py ```
就能执行这个脚本了。
选择一个顺手的编辑器
虽然可以用记事本写代码,但一个好的代码编辑器能让编程效率大幅提升。这里给大家推荐几款免费又好用的编辑器:
Visual Studio Code(VS Code):这是微软出品的免费编辑器,界面美观,功能强大,支持代码高亮、代码补全、调试等众多功能。它还有丰富的插件市场,安装Python插件后,可以获得更好的Python开发体验。
PyCharm:这是专门为Python开发的IDE(集成开发环境),功能非常全面。社区版是免费的,专业版需要付费。PyChram对新手非常友好,有智能提示、代码纠错、单元测试等功能。
Jupyter Notebook:这是一个基于浏览器的交互式编程环境,特别适合数据分析和机器学习领域。它的特点是"所见即所得",可以一边写代码,一边看到结果,还能添加文字说明和图表。
对于初学者,我建议从VS Code开始。它足够简单易用,又能满足大多数需求。等以后需要更强大的功能时,再考虑换用其他工具。
你好,世界:第一行代码
经典的开端
编程界有一个的传统:学习任何一门新语言的第一个程序,都是输出"Hello, World!"(你好,世界)。这个传统源于1978年出版的一本编程书《C程序设计语言》,作者Brian Kernighan在书中第一次使用这个例子。此后,这个传统延续至今,成为每个程序员的"成人礼"。
让我们也遵循这个传统。用你喜欢的编辑器创建一个新文件,输入以下代码:
```python print("Hello, World!") ```
然后保存为`hello.py`。在终端中运行它:
``` python hello.py ```
你应该会看到输出:
``` Hello, World! ```
恭喜你!你已经写出了人生中的第一行Python代码!虽然这只是一个小小的开始,但它标志着你正式踏入了编程的世界。
print函数详解
刚才用到的`print()`是Python中最基本也最常用的函数。函数,你可以理解为一个"功能盒子",你给它一些输入,它帮你完成特定的任务,然后输出结果。
`print`函数的作用是"打印"内容到屏幕上。圆括号里放的是要打印的内容。用双引号(或者单引号)包裹的内容叫做字符串,简单理解就是一串文字。
让我们试试更多的打印内容:
```python print("欢迎学习Python!") print("今天天气真不错") print('我可以打印中文,也可以打印英文') ```
运行后,你会看到三行输出。注意,Python对中英文都很友好,你可以自由地使用中文。
`print`函数还可以打印数字和其他内容:
```python print(2024) print(3.14159) print(1 + 2) ```
数字不需要加引号。如果是数学表达式,Python会先计算结果再打印。上面的代码会输出:2024、3.14159和3。
多学一招:注释的力量
在代码中,有一种特殊的内容叫做注释。注释是写给人看的,Python运行程序时会自动忽略它们。注释的作用是解释代码的含义,方便自己以后回顾,也方便别人阅读你的代码。
Python中有两种注释方式:
单行注释:以井号`#`开头
```python
这是一行注释,Python会忽略它
print("Hello") # 行尾也可以加注释 ```
多行注释:用三对引号包裹
```python """ 这是一个多行注释 可以写很多很多行 一般用于较长的说明 """ print("实际运行的代码") ```
养成写注释的好习惯很重要。特别是对于办公自动化这种需要反复修改的脚本,清晰的注释能让你在几个月后再看代码时,立刻想起每段代码是做什么的。
变量:数据的容器
什么是变量
让我们先来做一个脑筋急转弯:假设你有三个苹果,吃掉一个,还剩几个?答案当然是两个。但如果我问你:苹果在哪里?你可能会觉得奇怪——苹果不是在我手里、或者在桌子上吗?
这就是变量在编程中的意义。变量就像一个标签,一个存放数据的"盒子"。我们给这个盒子起个名字(变量名),然后把数据放进去。以后想用这个数据时,只需要叫它的名字就行了。
创建和使用变量
在Python中,创建变量非常简单:
```python name = "张三" age = 25 height = 1.75 is_student = True ```
看,我们用等号`=`把数据"赋值"给了一个名字。这个过程叫做赋值。等号左边是变量名,右边是变量的值。
- `name = "张三"`:创建了一个叫name的变量,存储的是字符串"张三"
- `age = 25`:创建了一个叫age的变量,存储的是数字25
- `height = 1.75`:创建了一个叫height的变量,存储的是小数1.75
- `is_student = True`:创建了一个叫is_student的变量,存储的是布尔值True
现在,让我们打印这些变量:
```python print(name) print(age) print(height) print(is_student) ```
运行后,你会看到变量的值被打印了出来。注意,打印变量时不需要加引号,因为引号是用来表示字符串的。
变量命名规则
给变量起名字可不是随便来的,需要遵守一些规则:
必须遵守的规则:
- 变量名只能包含字母、数字和下划线`_`
- 变量名不能以数字开头
- 变量名不能包含空格
- 变量名不能使用Python的保留字(如`if`、`for`、`while`、`print`等)
好的命名习惯:
- 变量名要有意义,一看就知道这个变量是干什么的
- 使用英文或拼音,避免用中文变量名(虽然Python支持,但最好别用)
- 多个单词用下划线分隔(如`user_name`)或者首字母大写(如`userName`)
- 变量名要简洁,但不是越短越好,`name`比`n`好,`user_name`比`username`更清晰
```python
好的命名
user_name = "李四" total_price = 99.9 is_vip_customer = True
不好的命名
a = "李四" # 不知道a代表什么 x1 = 99.9 # 不知道x1是什么意思 用户姓名 = "李四" # 不推荐使用中文 ```
变量的数据类型
前面我们看到了几种不同类型的数据:字符串、数字、布尔值。这些不同的类型叫做数据类型。Python中主要有以下几种基本数据类型:
字符串(str):用引号包裹的文本
```python name = "Python编程" message = '你好,世界!' empty_string = "" # 空字符串 ```
整数(int):没有小数点的数字
```python age = 25 year = 2024 count = -10 # 负数也是整数 ```
浮点数(float):有小数点的数字
```python price = 19.99 pi = 3.14159 temperature = -5.5 ```
布尔值(bool):只有两个值——True和False
```python is_active = True has_permission = False ```
类型转换:让数据变个身
有时候,我们需要把一种数据类型转换成另一种。比如,把数字转成字符串,或者把字符串转成数字。
转换为整数:使用`int()`函数
```python num = "123" print(int(num)) # 输出: 123 ```
转换为字符串:使用`str()`函数
```python num = 456 print(str(num)) # 输出: 456 ```
转换为浮点数:使用`float()`函数
```python num = "78.9" print(float(num)) # 输出: 78.9
integer = 100 print(float(integer)) # 输出: 100.0 ```
但是,类型转换不是万能的。如果你想把"hello"转成数字,Python会报错:
```python text = "hello"
print(int(text)) # 这会报错!
```
所以,类型转换要谨慎,确保数据是"可以转换的"。
运算符:让数据动起来
算术运算符
运算符就是用来进行各种运算的符号。Python中的算术运算符包括:
```python a = 10 b = 3
print(a + b) # 加法: 13 print(a - b) # 减法: 7 print(a * b) # 乘法: 30 print(a / b) # 除法: 3.333... print(a // b) # 整除: 3(取整数部分) print(a % b) # 取余: 1(10除以3余1) print(a ** b) # 幂运算: 10的3次方,即1000 ```
这些运算符和数学中的用法很像,应该很好理解。特别注意`//`(整除)和`%`(取余),这两个在办公自动化中经常用到,比如判断某个月有几天、计算季度等。
比较运算符
比较运算符用于比较两个值的大小关系,返回布尔值(True或False):
```python x = 5 y = 8
print(x == y) # 等于: False print(x != y) # 不等于: True print(x > y) # 大于: False print(x < y) # 小于: True print(x >= y) # 大于等于: False print(x <= y) # 小于等于: True ```
注意,等于运算符是`==`,而不是单独的`=`。单独的`=`是赋值运算符,用于给变量赋值。
逻辑运算符
逻辑运算符用于组合多个条件