From 52c83e0e217cddb8b36978b85f007a85dd09de0a Mon Sep 17 00:00:00 2001 From: Archie Date: Tue, 9 Jul 2024 23:22:04 +0100 Subject: [PATCH] Translated into Chinese --- Chinese/README.md | 460 ++++++++++++++++++++++++++++++++++++++++++++++ readme.md | 1 + 2 files changed, 461 insertions(+) create mode 100644 Chinese/README.md diff --git a/Chinese/README.md b/Chinese/README.md new file mode 100644 index 0000000..4f7aedc --- /dev/null +++ b/Chinese/README.md @@ -0,0 +1,460 @@ +# 🐍 30 天 Python + +| # 天数 | 主题 | +| ------ | :--------------------------------------------------------------------------------------: | +| 01 | [介绍](./readme.md) | +| 02 | [变量,内置函数](./02_Day_Variables_builtin_functions/02_variables_builtin_functions.md) | +| 03 | [运算符](./03_Day_Operators/03_operators.md) | +| 04 | [字符串](./04_Day_Strings/04_strings.md) | +| 05 | [列表](./05_Day_Lists/05_lists.md) | +| 06 | [元组](./06_Day_Tuples/06_tuples.md) | +| 07 | [集合](./07_Day_Sets/07_sets.md) | +| 08 | [字典](./08_Day_Dictionaries/08_dictionaries.md) | +| 09 | [条件](./09_Day_Conditionals/09_conditionals.md) | +| 10 | [循环](./10_Day_Loops/10_loops.md) | +| 11 | [函数](./11_Day_Functions/11_functions.md) | +| 12 | [模块](./12_Day_Modules/12_modules.md) | +| 13 | [列表解析](./13_Day_List_comprehension/13_list_comprehension.md) | +| 14 | [高阶函数](./14_Day_Higher_order_functions/14_higher_order_functions.md) | +| 15 | [类型错误](./15_Day_Python_type_errors/15_python_type_errors.md) | +| 16 | [Python 日期时间](./16_Day_Python_date_time/16_python_datetime.md) | +| 17 | [异常处理](./17_Day_Exception_handling/17_exception_handling.md) | +| 18 | [正则表达式](./18_Day_Regular_expressions/18_regular_expressions.md) | +| 19 | [文件处理](./19_Day_File_handling/19_file_handling.md) | +| 20 | [包管理器](./20_Day_Python_package_manager/20_python_package_manager.md) | +| 21 | [类和对象](./21_Day_Classes_and_objects/21_classes_and_objects.md) | +| 22 | [网页抓取](./22_Day_Web_scraping/22_web_scraping.md) | +| 23 | [虚拟环境](./23_Day_Virtual_environment/23_virtual_environment.md) | +| 24 | [统计](./24_Day_Statistics/24_statistics.md) | +| 25 | [Pandas](./25_Day_Pandas/25_pandas.md) | +| 26 | [Python 网页](./26_Day_Python_web/26_python_web.md) | +| 27 | [Python 与 MongoDB](./27_Day_Python_with_mongodb/27_python_with_mongodb.md) | +| 28 | [API](./28_Day_API/28_API.md) | +| 29 | [构建 API](./29_Day_Building_API/29_building_API.md) | +| 30 | [结论](./30_Day_Conclusions/30_conclusions.md) | + +🧡🧡🧡 快乐编码 🧡🧡🧡 + +
+帮助 作者 创作更多教育材料
+Paypal Logo +
+ +
+

30 天 Python:第 1 天 - 介绍

+ + + + + Twitter Follow + + +作者: +Asabeneh Yetayeh
+ 第二版:2021 年 7 月 +
+ +
+ +[第 2 天 >>](./02_Day_Variables_builtin_functions/02_variables_builtin_functions.md) + +![30DaysOfPython](.././images/30DaysOfPython_banner3@2x.png) + +- [🐍 30 天 Python](#-30-天-python) +- [📘 第 1 天](#第-1-天) + - [欢迎](#欢迎) + - [介绍](#介绍) + - [为什么选择 Python?](#为什么选择-python) + - [环境设置](#环境设置) + - [安装 Python](#安装-python) + - [Python Shell](#python-shell) + - [安装 Visual Studio Code](#安装-visual-studio-code) + - [如何使用 Visual Studio Code](#如何使用-visual-studio-code) + - [Python 基础](#python-基础) + - [Python 语法](#python-语法) + - [Python 缩进](#python-缩进) + - [注释](#注释) + - [数据类型](#数据类型) + - [数字](#数字) + - [字符串](#字符串) + - [布尔值](#布尔值) + - [列表](#列表) + - [字典](#字典) + - [元组](#元组) + - [集合](#集合) + - [检查数据类型](#检查数据类型) + - [Python 文件](#python-文件) + - [💻 练习 - 第 1 天](#-练习-第-1-天) + - [练习:等级 1](#练习等级-1) + - [练习:等级 2](#练习等级-2) + - [练习:等级 3](#练习等级-3) + +# 📘 第 1 天 + +## 欢迎! + +**恭喜** 你决定参加 _30 天 Python_ 编程挑战。在这个挑战中,你将学习成为一名 Python 程序员所需的一切以及所有编程概念。挑战结束时,你将获得 _30DaysOfPython_ 编程挑战证书。 + +如果你想积极参与挑战,可以加入 Telegram 群组 [30DaysOfPython challenge](https://t.me/ThirtyDaysOfPython)。 + +## 介绍 + +Python 是一种高级编程语言,适用于通用编程。它是一种开源、解释性和面向对象的编程语言。Python 由荷兰程序员 Guido van Rossum 创建。编程语言 Python 的名称来源于英国喜剧系列 _Monty Python's Flying Circus_。第一个版本于 1991 年 2 月 20 日发布。这个 30 天的 Python 挑战将帮助你逐步学习最新版本的 Python,Python 3。每一天都有不同的主题,包含易于理解的解释、现实世界的示例、大量的实际练习和项目。 + +本挑战适合初学者和希望学习 Python 编程语言的专业人士。完成挑战可能需要 30 到 100 天,积极参与 Telegram 群组的成员更有可能完成挑战。 + +本挑战易于阅读,最初以通俗英语编写,并翻译成中文,既具有吸引力、激励性,又具有很高的挑战性。你需要投入大量时间来完成这个挑战。如果你是通过观看学习效果更好的人,可以观看视频教程,访问 +Washera YouTube 频道 你可以从 [Python 对绝对初学者的视频](https://youtu.be/OCCWZheOesI) 开始。订阅频道,在 YouTube 视频中评论你的问题,并积极主动,作者最终会注意到你。 + +作者喜欢听取你对挑战的意见,分享文章并反馈你对 30DaysOfPython 挑战的看法。你可以在此处留下对文章的反馈:[link](https://testimonial-vdzd.onrender.com/) + +## 为什么选择 Python? + +它是一种非常接近人类语言的编程语言,语法简单,因此易于学习和使用。 +Python 被各行各业和公司(包括 Google)使用。它被用于开发 Web 应用程序、桌面应用程序、系统管理和机器学习库。Python 在数据科学和机器学习社区中被广泛采用。希望这足以说服你开始学习 Python。 + +## 环境设置 + +### 安装 Python + +要运行用 Python 编写的脚本,你需要安装 Python。访问 [Python 下载页面](https://www.python.org/)。 + +如果你是 Windows 用户。点击红色圈出的按钮。 + +[![在 Windows 上安装](.././images/installing_on_windows.png)](https://www.python.org/) + +如果你是 MacOS 用户。点击红色圈出的按钮。 + +[![在 MacOS 上安装](.././images/installing_on_macOS.png)](https://www.python.org/) + +要检查是否安装了 Python,请在设备的终端中输入以下命令。 + +```shell +python --version +``` + +![Python Version](./images/python_versio.png) + +如你所见,在终端中,我当前使用的版本是 Python 3.7.5。你的 Python 版本可能与我的不同,但应为 3.6 或更高版本。如果你能看到 Python 版本,很好。Python 已安装在你的机器上。继续下一部分。 + +### Python Shell + +Python 是一种解释型脚本语言,因此不需要编译。这意味着它逐行执行代码。Python 附带一个 Python Shell (Python 交互式 Shell),也称为 REPL (Read Eval Print Loop)。它用于执行单个 Python 命令并获得结果。 + +Python Shell 等待用户的 Python 代码。当输入代码时,它会解释并显示结果。 +打开终端或命令提示符 (cmd) 并输入: + +```shell +python +``` + +![Python Scripting Shell](./images/opening_python_shell.png) + +Python 交互式 Shell 已打开,等待你在该符号 >>> 旁边编写 Python 代码(Python 脚本)。编写第一个脚本并点击 Enter。 +让我们在 Python 脚本 Shell 中编写第一个脚本。 + +![Python script on Python shell](./images/adding_on_python_shell.png) + +非常好,你已经在 Python 交互式 Shell 中编写了第一个 Python 脚本。如何关闭 Python 交互式 Shell? +要关闭 Shell,请在该符号 >>> 旁边输入命令 **exit()** 并按 Enter。 + +![Exit from python shell](./images/exit_from_shell.png) + +现在你知道如何打开 Python 交互式 Shell 以及如何退出它。 + +Python 将在你编写 Python 可理解的脚本时提供结果;否则,它将返回错误。让我们故意犯一个错误,看看 Python 返回什么。 + +![Invalid Syntax Error](./images/invalid_syntax_error.png) + +如你所见,返回的错误表明 Python 非常智能,它知道我们犯了语法错误:Syntax Error: Invalid Syntax。在 Python 中使用 x 作为乘法是语法错误,因为 (x) 不是 Python 中的有效语法。我们用星号 (\*) 来表示乘法而不是 (x)。返回的错误明确显示了需要修正的地方。 + +识别和删除程序中的错误的过程称为调试。让我们通过将 \* 替换为 x 来调试它。 + +![Fixing Syntax Error](./images/fixing_syntax_error.png) + +我们的错误已修复,代码已执行,并得到了我们期望的结果。作为程序员,你每天都会看到这种类型的错误。了解如何调试是很重要的。为了擅长调试,你必须了解所遇到的错误类型。你可能会遇到的 Python 错误类型有 _SyntaxError_, _IndexError_, _NameError_, _ModuleNotFoundError_, _KeyError_, _ImportError_, _AttributeError_, _TypeError_, _ValueError_, _ZeroDivisionError_ 等等。我们将在后面的部分详细了解不同类型的 Python 错误! + +让我们更多地练习如何使用 Python 交互式 Shell。转到终端或命令提示符并输入单词 python。 + +![Python Scripting Shell](./images/opening_python_shell.png) + +Python 交互式 Shell 已打开。让我们做一些基本的数学运算(加法、减法、乘法、除法、取模、指数运算)。 + +在编写任何 Python 代码之前,让我们做一些数学运算: + +- 2 + 3 是 5 +- 3 - 2 是 1 +- 3 \* 2 是 6 +- 3 / 2 是 1.5 +- 3 \*_ 2 相当于 3 _ 3 + +在 Python 中,我们有以下附加运算: + +- 3 % 2 = 1 => 这意味着找到余数或(除法的模数) +- 3 // 2 = 1 => 这意味着删除除法的余数 + +让我们将上述数学表达式转换为 Python 代码。已打开 Python Shell,让我们在 Shell 的开头编写一个注释。 + +A _comment_ 是代码中未被 Python 执行的一部分,注释被 Python 解释器忽略。因此,我们可以在代码中留下某些文本以提高其可读性。Python 不执行注释部分。Python 中的注释以井号 (#) 符号开头。 +这就是你在 Python 中编写注释的方式: + +```python +# 注释以井号开头 +# 这是一个python注释,因为它以(#)符号开头 +``` + +![Maths on python shell](./images/maths_on_python_shell.png) + +在进入下一部分之前,让我们更多地练习 Python 交互式 Shell。通过在 Shell 中输入 _exit()_ 关闭已打开的 Shell,然后再次打开它,让我们练习如何在 Python Shell 中编写文本。 + +![Writing String on python shell](./images/writing_string_on_shell.png) + +### 安装 Visual Studio Code + +Python 交互式 Shell 非常适合测试小的脚本代码,但对于大型项目来说并不适用。在实际的工作环境中,开发人员使用不同的代码编辑器来编写代码。在这个 30 天的 Python 编程挑战中,我们将使用 Visual Studio Code。Visual Studio Code 是一个非常流行的开源文本编辑器。我是 vscode 的粉丝,并推荐下载 Visual Studio Code,但如果你喜欢其他编辑器,可以随意使用。 + +[![Visual Studio Code](./images/vscode.png)](https://code.visualstudio.com/) + +如果你已安装 Visual Studio Code,让我们看看如何使用它。 +如果你喜欢视频教程,你可以观看安装和配置 Visual Studio Code 以用于 Python 的[视频教程](https://www.youtube.com/watch?v=bn7Cx4z-vSo) + +#### 如何使用 Visual Studio Code + +通过双击 Visual Studio 图标打开 Visual Studio Code。打开后,你会看到类似的界面。尝试与标注的图标进行交互。 + +![Visual studio Code](./images/vscode_ui.png) + +在桌面上创建一个名为 30DaysOfPython 的文件夹。然后使用 Visual Studio Code 打开它。 + +![Opening Project on Visual studio](./images/how_to_open_project_on_vscode.png) + +![Opening a project](./images/opening_project.png) + +打开后,你会看到在 30DaysOfPython 项目目录中创建文件和文件夹的快捷方式。如下所示,我创建了第一个文件 helloworld.py。你也可以这样做。 + +![Creating a python file](./images/helloworld.png) + +经过长时间的编码,你想关闭你的代码编辑器,对吗?这是你关闭已打开项目的方法。 + +![Closing project](./images/closing_opened_project.png) + +恭喜你,完成了开发环境的设置。让我们开始编码。 + +## Python 基础 + +### Python 语法 + +Python 脚本可以在 Python 交互式 Shell 或代码编辑器中编写。Python 文件的扩展名为 .py。 + +### Python 缩进 + +缩进是文本中的空白。在许多语言中,缩进用于提高代码的可读性,但 Python 使用缩进来创建代码块。在其他编程语言中,使用大括号来创建代码块,而不是缩进。在 Python 中编写代码时,一个常见的错误是缩进错误。 + +![Indentation Error](./images/indentation.png) + +### 注释 + +注释对于提高代码的可读性和在代码中留下注释非常重要。Python 不执行代码中的注释部分。 +在 Python 中,任何以井号 (#) 开头的文本都是注释。 + +# 示例:单行注释 + +```shell +# 这是第一个注释 +# 这是第二个注释 +# Python 正在吞噬世界 +``` + +# 示例:多行注释,称为文档字符串 + +三重引号可以用于多行注释,如果它没有被分配给变量。 + +```shell +"""这是多行注释 +多行注释占用多行。 +Python 正在吞噬世界 +""" +``` + +### 数据类型 + +Python 中有多种数据类型。让我们从最常见的开始。不同的数据类型将在其他部分详细讨论。现在,让我们浏览一下不同的数据类型并熟悉它们。你现在不需要有明确的理解。 + +#### 数字 + +- 整数:它被认为是整数(负数、零和正数) + 示例: + ... -3, -2, -1, 0, 1, 2, 3 ... +- 浮点数:小数 + 示例: + ... -3.5, -2.25, -1.0, 0.0, 1.1, 2.2, 3.5 ... +- 复数 + 示例: + 1 + j, 2 + 4j + +#### 字符串 + +一串字符组成的文本,使用单引号或双引号表示。如果字符串超过一行,可以使用三引号。 + +**例子:** + +```py +'Asabeneh' +'Finland' +'Python' +'I love teaching' +'I hope you are enjoying the first day of 30DaysOfPython Challenge' +``` + +#### 布尔值 + +布尔值是 True 或 False。T 和 F 必须大写。 + +**例子:** + +```python +True # 灯是开的吗?如果是开着的,那么值是 True +False # 灯是开的吗?如果是关着的,那么值是 False +``` + +#### 列表 + +列表是一个有序的集合,可以存储不同类型的数据。类似于 JavaScript 中的数组。 + +**例子:** + +```py +[0, 1, 2, 3, 4, 5] # 所有都是相同数据类型 - 数字列表 +['Banana', 'Orange', 'Mango', 'Avocado'] # 所有都是相同数据类型 - 字符串列表(水果) +['Finland','Estonia', 'Sweden','Norway'] # 所有都是相同数据类型 - 字符串列表(国家) +['Banana', 10, False, 9.81] # 列表中的不同数据类型 - 字符串、整数、布尔值和浮点数 +``` + +#### 字典 + +Python 字典对象是以键值对格式存储的无序集合。 + +**例子:** + +```py +{ +'first_name':'Asabeneh', +'last_name':'Yetayeh', +'country':'Finland', +'age':250, +'is_married':True, +'skills':['JS', 'React', 'Node', 'Python'] +} +``` + +#### 元组 + +元组是一个有序的集合,类似于列表,但元组一旦创建就不能修改。它们是不可变的。 + +**例子:** + +```py +('Asabeneh', 'Pawel', 'Brook', 'Abraham', 'Lidiya') # 名字 +``` + +```py +('Earth', 'Jupiter', 'Neptune', 'Mars', 'Venus', 'Saturn', 'Uranus', 'Mercury') # 行星 +``` + +#### 集合 + +集合是类似于列表和元组的集合数据类型。与列表和元组不同,集合不是一个有序的集合。就像在数学中一样,Python 中的集合只存储唯一的项目。 + +在后面的部分,我们将详细介绍每种 Python 数据类型。 + +**例子:** + +```py +{2, 4, 3, 5} +{3.14, 9.81, 2.7} # 集合中的顺序不重要 +``` + +### 检查数据类型 + +要检查某个数据/变量的数据类型,我们使用 **type** 函数。在以下终端中,你将看到不同的 Python 数据类型: + +![Checking Data types](./images/checking_data_types.png) + +### Python 文件 + +首先打开你的项目文件夹,30DaysOfPython。如果你没有这个文件夹,创建一个名为 30DaysOfPython 的文件夹。在这个文件夹内,创建一个名为 helloworld.py 的文件。现在,让我们在 Visual Studio Code 中做我们在 Python 交互式 Shell 中所做的事情。 + +Python 交互式 Shell 在不使用 **print** 的情况下打印,但在 Visual Studio Code 中,为了查看我们的结果,我们应该使用内置函数 _print()_。_print()_ 内置函数接受一个或多个参数,如下所示 _print('arument1', 'argument2', 'argument3')_。请参见以下示例。 + +**例子:** + +​ 文件名是 helloworld.py + +```py +# 第 1 天 - 30DaysOfPython 挑战 + +print(2 + 3) # 加法(+) +print(3 - 1) # 减法(-) +print(2 * 3) # 乘法(*) +print(3 / 2) # 除法(/) +print(3 ** 2) # 指数(**) +print(3 % 2) # 取模(%) +print(3 // 2) # 整除(//) + +# 检查数据类型 +print(type(10)) # 整数 +print(type(3.14)) # 浮点数 +print(type(1 + 3j)) # 复数 +print(type('Asabeneh')) # 字符串 +print(type([1, 2, 3])) # 列表 +print(type({'name':'Asabeneh'})) # 字典 +print(type({9.8, 3.14, 2.7})) # 集合 +print(type((9.8, 3.14, 2.7))) # 元组 +``` + +要运行 Python 文件,请查看下图。你可以通过在 Visual Studio Code 中点击绿色按钮或在终端中输入 _python helloworld.py_ 来运行 Python 文件。 + +![Running python script](./images/running_python_script.png) + +🌕 你很棒。你刚刚完成了第 1 天的挑战,你正在迈向伟大。现在做一些练习来锻练你的大脑和肌肉。 + +## 💻 练习 - 第 1 天 + +### 练习:等级 1 + +1. 检查你使用的 Python 版本 +2. 打开 Python 交互式 Shell 并执行以下操作。操作数是 3 和 4。 + - 加法(+) + - 减法(-) + - 乘法(\*) + - 取模(%) + - 除法(/) + - 指数(\*\*) + - 整除(//) +3. 在 Python 交互式 Shell 中编写字符串。字符串如下: + - 你的名字 + - 你的姓氏 + - 你的国家 + - 我正在享受 30 天的 Python +4. 检查以下数据的数据类型: + - 10 + - 9.8 + - 3.14 + - 4 - 4j + - ['Asabeneh', 'Python', 'Finland'] + - 你的名字 + - 你的姓氏 + - 你的国家 + +### 练习:等级 2 + +1. 在 30DaysOfPython 文件夹中创建一个名为 day*1 的文件夹。在 day_1 文件夹中,创建一个名为 helloworld.py 的 Python 文件,并重复问题 1、2、3 和 4。记住在处理 Python 文件时使用 \_print()*。导航到你保存文件的目录,并运行它。 + +### 练习:等级 3 + +1. 为不同的 Python 数据类型编写一个示例,如数字(整数、浮点数、复数)、字符串、布尔值、列表、元组、集合和字典。 +2. 找到 (2, 3) 和 (10, 8) 之间的 [欧几里得距离](https://en.wikipedia.org/wiki/Euclidean_distance#:~:text=In%20mathematics%2C%20the%20Euclidean%20distance,being%20called%20the%20Pythagorean%20distance)。 + +🎉 恭喜 ! 🎉 + +[第 2 天 >>](./02_Day_Variables_builtin_functions/02_variables_builtin_functions.md) diff --git a/readme.md b/readme.md index bb1e889..4a10d3b 100644 --- a/readme.md +++ b/readme.md @@ -57,6 +57,7 @@ 🇧🇷 [Portuguese](./Portuguese/README.md) +🇨🇳 [中文](./Chinese/README.md) [Day 2 >>](./02_Day_Variables_builtin_functions/02_variables_builtin_functions.md)