/TutorialForPythonIO

Python的输入输出相关编程攻略

Primary LanguageJupyter NotebookMIT LicenseMIT

python输入输出编程攻略

python的io效率并不高,打眼一看并不符合服务器环境下存土寸金追求效率的要求.看起来并不是开发io密集型应用的好选择.这事其实说对了一半,对于运行效率python没有一丁点优势,即便是同为动态语言的node.js,效率和资源消耗都比python的低些,更不要提那些像C++,golang这样的静态语言了.

既然如此这篇是否还有意义呢?答案是有!

由于python语言的有:

  • 好学好上手,学习曲线平缓
  • 字符串处理手段多
  • 不用编译所见即所得便于快速开发快速测试
  • 可以非常轻易的用C/C++或cython扩展迭代
  • 有很深的科学计算,机器学习,数据分析和ai相关生态支撑

这样的特点,在输入输出编程这块它有一些奇怪的生态位:

  1. 需求不稳定需要快速迭代的网络应用
  2. 仅需简单功能的快速实现可交互demo
  3. 数据算法相关的api应用
  4. 无需精细界面的可交互后台管理应用或工具应用

本文也仅适用于上述场景.如果更高效稳定的io性能,推荐使用更加专业的golang作为开发语言

本文的结构

本文毕竟是攻略性质,定位是给第一次接触io编程的人,毕竟这系列攻略都是以从python开始接触编程的人为目标读者构思的.那除了应用层外也就必须介绍一些基础知识.

本文的结构会大致如下:

  • 基础知识部分
    • 文件系统简介
    • 网络编程简介
  • 应用开发部分
    • 接口服务
    • 应用服务