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

作者:C嘎嘎嵌入式开发日期:2025/10/11

官方文档

python教程

window系统下查看python版本

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

1python --version
2

或者

1python -V
2

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

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

Python 3简介

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

文章目录

  • Python 3简介
      • Python 3 的特点
          • 1. 简洁易读的语法
            * 2. Unicode 支持
            * 3. 改进的整数除法
            * 4. [print\ 函数](#4%5Fprint%5F%5F40)
            * 5. 改进的标准库
            * 6. 更严格的错误处理
            * 7. 迭代器与生成器
            * 8. 类型注解
            * 9. `async` 与 `await`
            * 10. 更高效的内存管理
        • 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 中的语句形式。你需要使用括号,例如:

1print("Hello, World!")
2

这使得 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)配合使用。

1def greet(name: str) -> str:
2    return "Hello, " + name
3
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 的表达能力。

(1)100天python从入门到拿捏》 是转载文章,点击查看原文


相关推荐


前端梳理体系从常问问题去完善-框架篇(react生态)
大前端helloworld2025/10/9

前言 国庆去趟了杭州,但是人太多了,走路都觉得空气很闷,天气也很热,玩了两天就回宿舍躺了,感觉人太多,看不到风景,而且消费也很高,性价比不是很值得,就呆在公寓,看了两本书,有一本是名著,《呼啸山庄》虽然是写的是爱情,但爱情背后是人性。爱情啊,这个课题本来就是让人很难读懂得,关于爱,也看了一篇文章。关于爱上人渣得,爱上人渣,或是那些求而不得甚至是受制于禁忌的爱,本质上也是在追求这种刺激,或者说正是因为这样的对象能给自己麻木的感官更大的刺激,从而误以为这就是「爱」的本质,就像是人们虽然知道「吊桥效应


Spec-Kit:AI驱动的软件开发全流程管理工具套件
是魔丸啊2025/10/8

Spec-Kit 是一套专为AI辅助开发场景设计的命令行工具套件,提供了从需求规格到代码实现的标准化工作流程。通过8个核心命令,它确保软件开发的每个环节都保持高质量和一致性。 核心理念 端到端管理:覆盖需求规格化、架构设计、任务分解、代码实现全流程 AI优化设计:专为与Claude等AI助手协作而优化 质量保证:内置多层次验证机制 知识沉淀:项目宪法、设计决策完整记录 这篇文章主要是想记录下spec-kit的核心command具体在干嘛。所以翻译了下所有的command(按照实际使用顺序)


Node.js(十二)插件开发
燎原人生2025/10/6

一、Node.js 原生插件(Native Addon)开发入门教程 1. 准备环境 安装 Node.js(建议最新版) 安装 node-gyp 工具(用于编译 C++ 代码) npm install -g node-gyp 安装编译环境 Windows: 需要安装 Windows Build ToolsmacOS: 需要安装 XcodeLinux: 需要安装 g++、make 等 2. 创建项目目录 mkdir my-native-addon cd my-native-


Qiankun 子应用生命周期及使用场景解析
excel2025/10/5

在前端微前端架构中,Qiankun 是常用的微前端框架。它允许主应用动态加载多个子应用,而子应用必须遵循特定生命周期,保证能够被正确加载、挂载和卸载。本文将详细解析 子应用的三个核心生命周期函数:bootstrap、mount、unmount,并说明它们的使用场景,同时给出具体示例。 1. 子应用生命周期概览 子应用生命周期分为三个阶段: Bootstrap(初始化阶段) Mount(挂载阶段) Unmount(卸载阶段) 每个阶段有明确的调用时机和职责。 2. bootstrap:初始


《Shell脚本门诊部:我治好了日志清理、自动备份和监控报警的“慢性病”》
鋯莂從媊2025/10/4

核心思路: 把Shell脚本比作“药方”,专门治疗运维工作中的那些重复、繁琐的“慢性病”。每个案例都是一个完整的、可复用的脚本。 内容要点与实操步骤: 案例一:日志清理脚本(“磁盘空间肥胖症”) 1.病症: /app/logs 目录动不动就100%,需要自动清理7天前的日志。 2.药方: #!/bin/bash # 日志清理专家 - 专治磁盘空间肥胖症 LOG_DIR="/app/logs" FIND_RESULT=$(find $LOG_DIR -name "*.log" -typ


ElementUI-Table 表格实现行拖拽
宣晨光2025/10/3

1、引入依赖 npm install sortablejs --save 2、table表格设置 1、添加属性 ref="multipleTable"  row-key="id" @row-drag-end="handleDragEnd"  2、添加列 <el-table-column width="50" align="center">             <template >               <i class="el-icon-rank drag-han


--group-start/--group-end 能不能解决 OpenSSL 1.0 vs 1.1 的优先级问题?
dlz08362025/10/2

--group-start / --group-end 其实是 ld 链接器的一个功能,专门用来解决 循环依赖的静态库 问题。 例如: -Wl,--start-group -lfoo -lbar -lbaz -Wl,--end-group 会让链接器在这几个库之间反复扫描,直到符号解析完为止。 🔎 那么能不能用它来“优先选 1.0 而不是 1.1”? 答案是:不行,原因如下: --start-group/--end-group 只是解决静态库依赖次序的问题,不会影响动态


BFF层设计:GraphQL网关在微前端联调中的实践
qq_314166012025/10/2

在现代前端架构中,微前端(Micro-Frontend)和 GraphQL 已成为热门技术趋势。随着业务模块的复杂化,前后端协作变得越来越关键。在本文中,我们将深入探讨 BFF(Backend For Frontend)层在微前端联调中的实践经验,并分享如何通过 GraphQL 网关提升前后端协作效率 ??。 一、什么是 BFF 层 BFF(Backend For Frontend)是一种为前端量身定制的后端服务层。它的核心目标是将不同前端应用(Web、移动端等)对数据的需求进行统一


LinuxC++——etcd分布式键值存储系统API(libetcd-cpp-api3)下载与二次封装
深思慎考10/2/2025

etcd-cpp-apiv3 是一个 C++ 语言编写的 etcd 客户端库,用于与 etcd 分布式键值存储系统进行交互。特性说明项目简介基于 C++ 的 etcd v3 API 客户端库核心功能分布式键值存储、配置管理、服务发现、分布式锁主要依赖官方仓库github下载地址通信协议通过 gRPC 与 etcd 服务器通信 (HTTP2 + protobuf)


从 .NET 到 Java 的转型指南:详细学习路线与实践建议
百锦再@新空间9/30/2025

本文探讨了从.NET转向Java开发的关键要点,主要包括: 转型背景分析 Java在跨平台、生态系统、成本控制和人才储备方面具有优势 .NET与Java在运行时环境、内存管理机制上存在架构差异 语言基础对比 Java的基本数据类型与包装类体系 字符串处理机制(String/StringBuilder/StringBuffer) 面向对象特性的实现差异(类继承、接口等) 学习策略建议 利用两种语言在OOP概念上的相似性 重点关注平台特性、工具链和部署方式的差异 文章通过大量代码示例(如类型系统、资源管理、字符

首页编辑器站点地图

Copyright © 2025 聚合阅读

License: CC BY-SA 4.0