详解python学习笔记之解释器
作者:阿_焦 时间:2023-09-15 15:28:26
1、python教程
基于 python3.10 的持续解读,旨在快速回忆加深理解,节约自己的时间成本
1.1 概述
python 是一门易于学习的编程语言,提供了高效的高级数据结构,简单有效的面向对象编程,
因为优雅的语法、动态类型、解释型语言的本质,让它成为多数平台上写脚本和快速开发应用的理想语言。以下总结都是基于python10展开。
1.2 python标准库
大量以 Python 编写的模块,提供了日常编程中许多问题的标准解决方案,
https://docs.python.org/zh-cn/3/library/index.html#library-index
目录如下:
概述、内置函数、内置常量、内置类型、内置异常、
文本处理服务、二进制数据服务、数据类型、数字和数学模块、函数式变成模块、文件和目录访问、数据持久化、数据压缩和存档
文件格式、加密服务、通用操作系统服务、并发执行、网络和进程间通信、互联网数据处理、结构化标记处理工具、互联网协议和支持、多媒体服务
国际化、程序框架、TK图形用户界面(GUI)、开发工具、调试与分析、软件打包与分发、python运行时服务、自定义python解析器、python语言服务
导入模块、windows系统相关模块、Unix 专有服务、被取代的模块、
1.3 python语言参考手册
https://docs.python.org/zh-cn/3/reference/index.html#reference-index
介绍了 Python 句法与“核心语义”。在力求简明扼要的同时,我们也尽量做到准确、完整,概述、词法分析、数据模型、执行模型、导入系统、表达式、简单语句、符合语句、顶级组件、完整的语法规范
1.4 python包索引
https://pypi.org/
python教程
https://docs.python.org/zh-cn/3/tutorial/index.html
本教程对每一个功能的介绍并不完整,甚至没有涉及全部常用功能,只是介绍了 Python 中最值得学习的功能,旨在让读者快速感受一下 Python 的特色。
学完本教程的读者可以阅读和编写 Python 模块和程序,也可以继续学习 Python 标准库。
1.5 术语对照表
https://docs.python.org/zh-cn/3.10/glossary.html#glossary
2、课前甜点
Python 虽然简单易用,但它可是真正的编程语言,提供了大量的数据结构,也支持开发大型程序,远超 shell 脚本或批处理文件。
Python 程序简洁、易读,通常比实现同种功能的 C、C++、Java 代码短很多,原因如下:
高级数据类型允许在单一语句中表述复杂操作;
使用缩进,而不是括号实现代码块分组;
无需预声明变量或参数。
Python “可以扩展”:会开发 C 语言程序,就能快速上手为解释器增加新的内置函数或模块,不论是让核心程序以最高速度运行,还是把 Python 程序链接到只提供预编译程序的库(比如,硬件图形库)。只要下点功夫,就能把 Python 解释器和用 C 开发的应用链接在一起,用它来扩展和控制该应用。
3、python解析器
3.1 传入参数
tiaoce.py
import sys
a = sys.argv[0]
b = sys.argv[1]
c = sys.argv[2]
# 在命令行指定language的值,文件离输出language
if b.split("=")[0] == "language":
c = b.split("=")[1]
print("脚本后第一个字符串的值:"+c)
else:
print("你的第一个参数名不对,应该是language")
# 以上三个变量可以作为函数的参数,传递到后续程序中
def tiaoce(a, b, c):
print("脚本名称:" + a)
print("脚本后的第一个字符串:" + b)
print("脚本后的第二个字符串:" + c)
tiaoce(a,b,c)
预期:
C:\Users\mc\Desktop\python基础>python tiaoce.py language=jiao aa bb
脚本后第一个参数的值:jiao
脚本名称:tiaoce.py
脚本后的第一个字符串:language=jiao
脚本后的第二哥字符串:jiao
3.2 交互式运行
C:\Users\mc>python
Python 3.9.6 (tags/v3.9.6:db3ff76, Jun 28 2021, 15:26:21) [MSC v.1929 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> aa = True
>>> if aa:
... print("jiaotengfei")
...
jiaotengfei
>>>
3.2.1 可执行的Python脚本
linux上执行:Python脚本可以直接执行,就像shell脚本一样,第一行添加:
#!/usr/bin/env python3.5
$ chmod +x myscript.py
windows10上执行:右键py文件,打开方式选择python,双击后就会自动执行 tiaoce.py
print("jiao")
a = input("请输入信息:")
print(a)
3.2.2 交互式启动文件
当您以交互方式使用Python时,每次启动解释器时都会执行一些标准命令,这通常很方便。您可以通过将名为 PYTHONSTARTUP 的环境变量设置为包含启动命令的文件名来实现。这类似于Unix shell的 .profile 功能。
import os
filename = os.environ.get('ANDROID_HOME')
# 打印你的环境变量的值,
print(filename)
# 预期
"""D:\Program Files\android-sdk-windows"""
filename = os.environ.get('PYTHONSTARTUP')
print(filename)
if filename and os.path.isfile(filename):
with open(filename) as fobj:
startup_file = fobj.read()
print(startup_file)
exec(startup_file)
3.3 解释器的运行环境( 源文件的字符编码)
默认情况下,Python 源码文件的编码是 UTF-8,如果不使用默认编码,则要声明文件的编码,文件的 第一 行要写成特殊注释。句法如下:
# encoding 可以是 Python 支持的任意一种 codecs。
# (这个模块定义了标准 Python 编解码器(编码器和解码器)的基类)
# -*- coding: encoding -*-
# 声明使用 Windows-1252 编码
# -*- coding: cp1252 -*-
可执行python 文件的第一行定义:
#!/usr/bin/env python3
# -*- coding: cp1252 -*-
来源:https://blog.csdn.net/weixin_45451320/article/details/123773901