python脚本文件格式_Python 基础语法_Python脚本文件结构
目录
前言
Python基础语法这一章,主要记录了Python的文件结构、逻辑运算符、算术操作符、控制流语句、输入和输出语句、函数、对象、类等方面的内容。在了解了Python的数据类型之后,结合之前的要点来一起继续学习。
软件环境
系统
UbuntuKylin 14.04
软件
Python-2.7.6
IPython-4.0.0
Python Script文件结构
Python Script 是应用广泛的一种批量自动化处理方案,同时任何的.py扩展文件在Python执行程序中都可以充当Module文件来使用,是一个于C语言中的头文件类似的东西。从Python一切皆对象的设计理念来说,只要将.py的扩展文件导入Python执行程序中后,我们就可以使用一些Python的内置方法。下面先从Python Script的文件结构开始记录。
#!/usr/bin/env python
#-*- coding:utf8 -*-
"""Document:Python Script Description"""
import os
defineGlobalVairiable = True
#define class
class TestClass(object):
"""Class description """
#define function
def testFunction(self,parameters):
"""Function description"""
#main program 程序入口
if __name__ == '__main__':
print 'Hello world'
1. Script文件的首行需要指定以什么可执行程序来运行该文件的代码。
例如:#!/usr/bin/python 指定了路径为/usr/bin下的Python程序来执行。但是在有些情况下HOST的Python执行程序不一定安装在默认的/usr/bin/目录下,使用/usr/bin/env python 则指定了在env环境变量的路径中逐一寻找Python执行程序来执行这个文件中的代码,也推荐使用第二种方法。
2.在第二行需要指定PythonScript的编码格式
下面两种均可以指定Script的编码格式,并没有上面区别,个人喜的选择。
#coding=utf8
#-*- coding:utf8 -*-
#encoding:utf8
#encoding=utf8
3.接下来便是文件的Document部分
编写程序也要注重注释和文档的编写。使用”“” “”” or ”’ ”’来注释文档没有区别。在导入Python Module后,可以使用__doc__方法来查看Document。
In [16]: import pyScriptFormat
In [19]: pyScriptFormat.__doc__
Out[19]: 'Document:Python Script Description'
In [21]: pyScriptFormat.testFunction.__doc__
Out[21]: 'Function description'
注:当Import一个Module文件时,Python执行程序会在对其进行一次编译后,会生成.pyc扩展名的字节码文件,同时也会检查.py文件的语法问题。所以当Import出现错误时,可以考虑是否出现了语法错误。
还可以使用Python内置的dir( )方法来查看这一个Module的内置方法和自定义的属性、方法(以__X__命名的多为系统变量)。
In [22]: dir(pyScriptFormat)
Out[22]:
['TestClass',
'__builtins__',
'__doc__',
'__file__',
'__name__',
'__package__',
'defineGlobalVairiable',
'os',
'testFunction']
4.导入需要的模块
使用 import moduleName 这样的格式来导入一个Python的模块,在.py文件中可以随时随地的使用import语句来导入Python的内置函数模块,值得注意的是,当导入的模块是自定义的Python模块文件时,需要保持与模块文件在同一目录路径下。
5.定义全局变量、类、函数
在定义类和函数的时候,也可以在代码块的第二行中写入类或函数的描述说明,至于定义一个类和函数的具体细节,在以后的博文中会详细的记录。
6.程序入口 __name__
__name__方法可以调用当前模块的名字,当该模块是直接运行而非被其他程序导入调用的时候,则该模块的__name__ == ‘__main__’。相反,当该模块是其他程序导入的时候,则该模块的__name__ == ModuleFileName,即模块文件本身的名字。
In [7]: import pyScriptFormat
In [8]: pyScriptFormat.__name__
Out[8]: 'pyScriptFormat'
所以当我们若希望模块的主程序仅仅是在被期望执行的时候才会被执行,而不会自动执行时,可以使__name__方法来进行控制,即作为主程序的入口:
if __name__ == '__main__':
这样可以实现节省内存的资源,也有利于提高代码的重用性。
导入模块的流程
Python解析器会自带需要内置的模块,这些模块文件被存放在/usr/lib/python2.7/目录下。模块文件在第一次导入时,会先编译成.pyc后缀的文件,方便下次可以无须编译速度实现导入。
1. 在当前目录下寻找.pyc的模块文件
2. 若没有则将同名的.py文件,编译成.pyc文件后再导入
3. 若连.py文件都没有的话,会到/usr/lib/python.2.7/目录下寻找
4. 若仍然没有找到,就到setpy目录下寻找
5. setpy下也没有找到时,会出发ImportError的错误。
Python的包package
创建一个Python包:
1. 创建一个包目录PackageName
2. 在package目录下创建__init__.py文件,有__init__.py文件表示此目录为包结构
3. 在此目录下可以存放Module、Script、.pyc、子包等结构的文件或目录
调用方式:
import PackageName.ModuleName
PackageName.MudoleName.functionName() #逐层调用
最后
需要注意的是,在不同的使用环境下,Python文件的结构也会不一样,本篇是针对Python Script文件而言。但退一步来说,大道相通,希望可以做到举一反三。同时,养成一个良好的编程风格是文档处理的习惯会在以后的Teamwork中发挥很多便利的作用。
Jmilk
python脚本文件格式_Python 基础语法_Python脚本文件结构相关推荐
- python中、文件最重要的功能是( )和接收数据_Python基础语法14个知识点大串讲
来源:Python数据之道 Python基础语法大串讲Python 是一门面向对象的编程语言,相信这篇文章对于初学者而言应该会有一个比较大的帮助,下面我们将 Python 中常用的基础语法和函数做了一 ...
- 关于JS脚本语言的基础语法
JS脚本语言的基础语法:输出语法 alert("警告!"); confirm("确定吗?"); prompt("请输入密码");为弱 ...
- 【Python自动化运维】Python环境安装及基础语法
[Python自动化运维]Python环境安装及基础语法 1. Python环境安装 2. Python基础语法 1. Python环境安装 pyenv官方安装手册:https://github. ...
- Python 实例教学_01_基础语法
Python 实例教程 教学方法 课前准备 要求 Python 实例教学_01_基础语法 [Python 教学](https://blog.csdn.net/weixin_43955170/categ ...
- Python 基础语法_Python脚本文件结构
目录 目录 前言 软件环境 Python Script文件结构 导入模块的流程 Python的包package 最后 前言 Python基础语法这一章,主要记录了Python的文件结构.逻辑运算符.算 ...
- python赋值语句的一般格式为_Python 基础语法
Python 基础语法 Python 语言与 Perl,C 和 Java 等语言有许多相似之处.但是,也存在一些差异. 在本章中我们将来学习 Python 的基础语法,让你快速学会 Python 编程 ...
- python语句行从解释器提示符后第几列开始_Python基础语法
学习一门编程语言,通常是学习该语言的以下几个部分的内容:基础语法:如,变量的声明与调用.基本输出语句.代码块语法.注释等: 数据类型:通常都为 数字.字符串.布尔值.数组.链表.Map.Set等: 运 ...
- python列表嵌套字典取值_Python基础语法:你不得不知的几种变量类型
(点击上方快速关注并设置为星标,一起学Python) 作者:kina_chen來源:简书 01. Python编码Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字, ...
- python汇编指令_Python基础语法
阅读目录: 第一节:编程基础 第一节:编程基础 第二节:语言分类 第三节:高级语言的发展 第四节:程序program 第五节:Python解释器 第六节:Python基础语法 第七节:程序控制 第八节 ...
最新文章
- spring vertx_如何在Spring设置Vertx
- ng-model 绑定checkbox 取不到值?
- 基于深度神经网络的图像缺损修复方法综述
- 河南省住建厅调研新郑智慧城市建设 市民享受服务便利
- RHEAS 显示、输入中文
- (转载)你好,C++(19)“老师,我这次四级考试过了没有?”——4.2 条件选择语句...
- 【转】BASE64编码规则
- 北美KubeCon新风,正把K8S魔力带向边缘计算
- 数据库系统实训——实验十——事务
- jenkins安装部署全过程
- matlab设计模拟高通滤波器
- 【NOIP校内模拟】T2 字胡串(分治)
- BetaMeow----利用机器学习做五子棋AI
- mysql 执行计划 视频_实战讲解MySQL执行计划,面试官当场要了我
- oracle可视化操作界面——plsql dev安装配置与使用
- Win10使用以前的图片查看器
- C++ 职工管理系统
- Nginx 实现域名访问以及反向代理
- open-能连接,但无法访问内网的问题
- Jupyter Notebook 输出有颜色的文字
热门文章
- vb怎么判断整数_VB数学函数大全
- export_symbol能对变量使用吗_美缝剂能代替玻璃胶使用吗?
- rx java定时循环_Rxjava定时器异常循环
- easyui 控制某列显示不显示_baogaiMCU控制OLED显示屏
- iphone连上wifi却上不了网_我想问问为何我的手机连上家里的wifi,可以用,但是将网线连接路由器与主机电脑时,电脑却上不了网...
- mysql 服务账号_MySql 账号管理
- 编辑器扩展_开发者必备,可扩展编辑器tui.editor和TOAST UI组件家族
- 人工智能可控核聚变量子计算机,中国终于实现了可控核聚变
- bp神经网络matlab实例蚊子,bp神经网络matlab实例
- python list中的append 与 extended 的区别