(1)100天python从入门到拿捏

官方文档

python教程

window系统下查看python版本

win+R键打开cmd输入下面的命令

复制代码
python --version

或者

复制代码
python -V

类似c语言以.c为后缀,c++以.cpp为后缀,python文件的扩展名以.py结尾

Jupyter Notebook文件以.ipynb为后缀,该类文件通常包含代码、文本和可视化结果

Python 3简介

Python 3 是一种高级、解释型的编程语言,广泛用于 Web 开发、数据科学、机器学习、自动化、人工智能等领域。与 Python 2 相比,Python 3 在语法、库和功能上进行了改进和更新,旨在提升语言的易用性和一致性。

文章目录

  • [Python 3简介](#Python 3简介)
      • [Python 3 的特点](#Python 3 的特点)
        • [1. 简洁易读的语法](#1. 简洁易读的语法)
        • [2. Unicode 支持](#2. Unicode 支持)
        • [3. 改进的整数除法](#3. 改进的整数除法)
        • [4. `print` 函数](#4. print 函数)
        • [5. 改进的标准库](#5. 改进的标准库)
        • [6. 更严格的错误处理](#6. 更严格的错误处理)
        • [7. 迭代器与生成器](#7. 迭代器与生成器)
        • [8. 类型注解](#8. 类型注解)
        • [9. `async` 与 `await`](#9. asyncawait)
        • [10. 更高效的内存管理](#10. 更高效的内存管理)
      • [Python 3 与 Python 2 的差异](#Python 3 与 Python 2 的差异)
      • 主要版本

Python 3 的特点

1. 简洁易读的语法

Python 3 保持了 Python 的核心设计原则:简洁、可读和优雅。它的语法较为直观,代码风格一致,因此非常适合初学者和开发人员。

2. Unicode 支持

Python 3 完全支持 Unicode,可以处理所有语言的字符集,而 Python 2 默认使用 ASCII 编码。这使得 Python 3 在全球化应用中更为强大,尤其在处理多语言文本时。

3. 改进的整数除法

在 Python 3 中,整数除法 3 / 2 会得到浮动结果 1.5,而不是 1。如果需要整数除法,使用 // 操作符。这样消除了 Python 2 中整数除法的潜在误解。

4. print 函数

Python 3 强制 print 作为一个函数调用,而不是 Python 2 中的语句形式。你需要使用括号,例如:

复制代码
print("Hello, World!")

这使得 print 在 Python 3 中更一致,并且可以被当作函数传递。

5. 改进的标准库

Python 3 的标准库经过重构,许多 Python 2 中的过时模块被淘汰或更新。例如,urllib 模块在 Python 3 中被重新设计,简化了 URL 操作。

6. 更严格的错误处理

Python 3 提供了更一致的异常处理机制。它要求 except 语句明确指定异常类型,避免了 Python 2 中有时容易忽略的错误。

7. 迭代器与生成器

Python 3 中,大多数内置容器(如 rangemapfilter 等)返回迭代器而不是列表。这样可以节省内存,尤其在处理大量数据时,性能更优。

  • 在 Python 2 中,range() 会返回一个完整的列表。
  • 在 Python 3 中,range() 返回一个迭代器。
8. 类型注解

Python 3 引入了类型注解(PEP 484),允许开发者为函数的参数和返回值提供类型提示。虽然 Python 仍然是动态类型语言,但类型注解有助于提高代码的可读性和可维护性,并且可以与静态分析工具(如 mypy)配合使用。

复制代码
def greet(name: str) -> str:
    return "Hello, " + name
9. asyncawait

Python 3.5 引入了 asyncawait 关键字,使得编写异步代码变得更加简单和直观。异步编程使得 Python 更适合用于高并发的应用,如 Web 服务和爬虫。

10. 更高效的内存管理

Python 3 在内存管理方面进行了优化,尤其是在字符串和容器的实现上。例如,Python 3 对 dict(字典)和 set(集合)做了优化,增加了更好的性能和内存效率。

Python 3 与 Python 2 的差异

虽然 Python 3 在性能、语法和库支持上有显著改进,但由于 Python 2 曾经是主流版本,许多老旧项目仍然在使用 Python 2。因此,Python 3 和 Python 2 存在一些不兼容的地方。主要差异包括:

  • 字符串处理:Python 3 默认使用 Unicode 字符串,而 Python 2 默认为 ASCII。
  • print:Python 2 中是语句,Python 3 中是函数。
  • 除法运算:Python 2 中整数除法会舍弃小数部分,Python 3 中返回浮点数。
  • xrange() :Python 2 中有 xrange(),用于生成数字的迭代器;Python 3 中只有 range(),并且返回迭代器。

主要版本

  • Python 3.0:于 2008 年发布,标志着 Python 2 到 Python 3 的过渡。
  • Python 3.5 :引入了 async/await
  • Python 3.6:引入了 f-string 格式化字符串,增加了语法的简洁性。
  • Python 3.7 :引入了数据类(dataclasses),简化了类的定义。
  • Python 3.8 :引入了运算符"海象运算符"(:=)等新特性。
  • Python 3.9:引入了类型注解和一些其他增强功能。
  • Python 3.10:引入了模式匹配,进一步提升了 Python 的表达能力。
相关推荐
lili-felicity几秒前
CANN模型量化详解:从FP32到INT8的精度与性能平衡
人工智能·python
数据知道3 分钟前
PostgreSQL实战:详解如何用Python优雅地从PG中存取处理JSON
python·postgresql·json
island13148 分钟前
CANN GE(图引擎)深度解析:计算图优化管线、内存静态规划与异构 Stream 调度机制
c语言·开发语言·神经网络
曹牧12 分钟前
Spring Boot:如何在Java Controller中处理POST请求?
java·开发语言
浅念-15 分钟前
C++入门(2)
开发语言·c++·经验分享·笔记·学习
WeiXiao_Hyy16 分钟前
成为 Top 1% 的工程师
java·开发语言·javascript·经验分享·后端
ZH154558913116 分钟前
Flutter for OpenHarmony Python学习助手实战:面向对象编程实战的实现
python·学习·flutter
玄同76516 分钟前
SQLite + LLM:大模型应用落地的轻量级数据存储方案
jvm·数据库·人工智能·python·语言模型·sqlite·知识图谱
User_芊芊君子21 分钟前
CANN010:PyASC Python编程接口—简化AI算子开发的Python框架
开发语言·人工智能·python
Max_uuc32 分钟前
【C++ 硬核】打破嵌入式 STL 禁忌:利用 std::pmr 在“栈”上运行 std::vector
开发语言·jvm·c++