# Day01 ## Python 概述 1. 创始人 : 吉多 2. 1989 年圣诞节开始开发 Python 3. 高级语言 4. 优缺点 \(快速、高效\) * 简单易学 : 基础语法简单 * 开发效率高 : 第三方模块、库多 * 面向对象 : 更接近人类的思想 * 免费、开源 : 可以自己修改 * 跨平台 : 跨操作系统 * 可拓展 : 可以用其他语言进行拓展 * 运行效率低,与其他语言对比起来 * 无法进行加密,安全性低 5. 应用 * 服务器操作系统的自动化运维 * Web 开发 * Django、Flask 高效、快捷的实现网站后台开发与前端渲染 * tornado 编写异步 web 服务器 * 网络爬虫 * requests 模块 和 Scrapy 框架快速高效编写爬虫脚本 * 数据分析、人工智能 * 图像识别 * 大数据处理 ## 开发环境配置 1. 开发 : 软件开发,通过编程语言制作软件的过程 2. 环境 : 安装了可以运行代码的各种支持 3. 开发环境 : 程序员通过编程语言编写和执行的 环境 4. 生产环境 : 企业运行软件,给用户提供服务的计算机 \(服务器,测试环境,在测试服务器上进行测试\) ## 环境变量配置 1. 安装 Python 解释器 \(通过 exe 直接安装,最好自定义安装,选择安装 pip 与 添加路径到环境变量\) * 编程语言 * 解释型 : 运行效率低 \(翻译一行执行一行\) * 编译型 : 执行效率高、不能跨平台 \(先编译,再执行编译后文件\) * Python 解释器 \(解释运行 Python 代码\) * CPython : 直接解释运行 Python 代码,并且可以和 C 进行嵌套开发 \(官方提供\) * JPython : 直接解释运行 Python 代码,并且可以和 Java 进行混合开发 \(社区提供\) * Pypy : 将 Python 解释型的特性转换为编译解释型 \(社区提供\) * IPython : 优化解释器方案 \(主要用于交互\) 2. 集成环境 \(包含大量第三方模块,后期数据分析使用\) 安装 * 包含内容 * Python 解释器 * 科学计算的模块和包 * Anaconda 3. 开发工具 * 记事本 * 超级记事本 * VS Code * sublime * IDE 工具 * Pycharm * IDLE ## 基础操作语法 1. 注释 * 单行注释 : `# 注释内容` * " Ctrl + / " : 快速单行注释 * 描述 重要 代码 * 多行注释 \(文档注释\) `""" 注释内容 ""“` * 主要用于文档注释,描述 程序功能 2. 命名 * 文件命名 * 创建 "python file" 自动添加后缀名 .py * 为程序、安装路径 命名,最好是英文路径,之后使用与调用不会出现问题 * 类、函数命名 * 类命名 : 大驼峰命名法,首字母大写 * 函数命名 : 全小写,单词中间用 "\_" 连接 * 变量、常量命名 * 变量命名 : 字母间用 "\_" 连接,不能用数字开头,不能使用系统关键字 ```python import keyword print(keyword.kwlist) # ['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield'] ``` * 常量命名 : 变量名全部大写 3. 输入输出 * 输出 * 换行输出 : `print("xxxx")` * 一次输出里的换行输出 \(\n\) : `print("dadaf\ndadsafaf\n")` * 不换行输出 : `print("xxxx", end="")` * 输入 * 从键盘输入 : `input("请输入: ")` 4. 数据类型 1. 基本数据类型 \(Python 根据输入数据区分整形与浮点型\) * 整形 : int\(\) * 浮点型 : float\(\) * 复数 : * 布尔型 : False、True * 字符串 : str\(\) 被引号引起来的无论什么类型数据都为字符串 * None 2. 组合数据类型 * 列表 : list\(\) * 集合 : set\(\) * 元组 : tuple\(\) * 字典 : dict\(\)、zip\(\) 3. 复杂数据类型 * 函数