Python笔记(2) Python基础
Python笔记(2) Python基础
- 1. 解释器
- 2. 编码
- 3. 标识符
- 4. 程序入口
- 5. 模块
- 6. 包
1. 解释器
经常可以看到 Python 源码文件中第一行经常出现下面这行代码:
#!/usr/bin/python
是用来说明脚本语言是 python 的,要用/usr/bin下面的程序 python 这个解释器,来解释 python 脚本,来运行 python 脚本的
即 指定用什么解释器运行脚本以及解释器所在的位置
2. 编码
偶尔可以看到 Python 源码文件中第二行经常出现下面这行代码:
# -*- coding: utf-8 -*-
默认情况下,Python 2 源码文件以 ASCII 编码,为了提高兼容性,经常设置以 UTF-8 编码
默认情况下,Python 3 源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串
所以只用在 Python 3 源码文件比较少见到
当然也可以为源码文件指定不同的编码
3. 标识符
在 Python 里,标识符由字母、数字、下划线组成
但 不能以数字开头,并且区分大小写
以下划线开头的标识符是有特殊意义的:
以单下划线开头 _foo 的代表:不能直接访问的类属性
需通过类提供的接口进行访问,不能用from xxx import *
而导入以双下划线开头的 __foo 代表: 类的私有成员
以双下划线开头和结尾的__foo__代表:特殊方法专用的标识
如__init__ () 代表类的构造函数
4. 程序入口
在一个.py文件中,如果不是在定义函数,也就是说不是在def关键字的内嵌结构内
python会默认其余部分函数是main函数,并自动执行
但正规工程中,一般都会将main函数写为:
if __name__ == "__main__"
假设test1.py文件为:
print("Test1 one")def SayHello():print("Hello World")SayHello()
print("Test1 two")
假设test2.py文件为:
print("Test2 one")def SayHello():print("Hello World !")if __name__ == "__main__":SayHello()print("Test2 two")
通过运行test3.py文件查看调用的程序入口:
import test1print()
import test2# Test1 one
# Hello World !
# Test1 two
#
# Test2 one
可以看出test2.py文件 if __name__ == "__main__":
部分没有执行
因为每个模块都有一个__name__属性
当其值是’main’时,表明该模块自身在运行,而不是被引入
所以,在模块被引入时,希望模块中的某一程序块不执行
可以用__name__属性来使该程序块仅在该模块自身运行时执行
5. 模块
用 python 解释器来编程,如果从 Python 解释器退出再进入
那么定义的所有的方法和变量就都消失了
为此 Python 提供了一个办法,把这些定义存放在文件中
能定义函数,类和变量,模块里也能包含可执行的代码
为一些脚本或者交互式的解释器实例使用,这个文件被称为模块
模块是一个包含了 对象定义和语句的文件,其后缀名是.py的文件
模块可以被别的程序引入,以使用该模块中的函数等功能
下例是个简单的模块 support.py:
def print_func(par):print("Hello,", par)return
模块定义好后,可以使用 import 语句来引入模块
import supportsupport.print_func("kaka")# Hello, kaka
一个模块只会被导入一次,不管执行了多少次import
这样可以防止导入模块被一遍又一遍地执行
6. 包
包是一个分层次的文件目录结构
它定义了一个由模块及子包,和子包下的子包等组成的 Python 的应用环境
但该文件夹下必须存在__init__.py文件, 该文件的内容可以为空,用于标识当前文件夹是一个包
如果把刚刚的 support.py文件放在同目录的 /test文件夹中
通过 from 包 import 文件 调用
from test import supportsupport.print_func("kaka")# Hello, kaka
参考:
Python 基础教程 | 菜鸟教程
中文 Python 笔记
相关推荐:
Python笔记(1) Python简介
谢谢!
Python笔记(2) Python基础相关推荐
- Python笔记day04(基础)|列表、元组
Python笔记day04(基础) 1,昨日内容及作业讲解 ascii:字母,数字,特殊字符:1个字节,8位 Unicode:16位 两个字节 升级 32 位 四个字节 utf-8:最少一个字节 8位 ...
- python 网页版笔记_【Python笔记】Python网页正文抽取工具
本文信息本文由方法SEO顾问发表于2016-05-2018:48:27,共 1153 字,转载请注明:[Python笔记]Python网页正文抽取工具_[方法SEO顾问],如果我网站的文章对你有所帮助 ...
- python知识笔记_[Python笔记]第一篇:基础知识
二.为什么要使用Python 优点: 学习成本低 开发效率高–拥有丰富而且强大的第三方库 高级语言–不用关心底层运作细节 可扩展性–Python是一门胶水语言,能于其他语言如C ,C#进行扩展 缺点: ...
- [Python笔记]第一篇:基础知识
本篇主要内容有:什么是python.如何安装python.py解释器解释过程.字符集转换知识.传参.流程控制 初识Python 一.什么是Python Python是一种面向对象.解释型计算机程序设计 ...
- python笔记(零基础学Python)
<零基础学Python> 1.基础 2.流程控制语句 3.序列的应用 4.字符串.正则表达式 5.函数 6.面向对象 7.模块(库) 8.异常处理+程序调试 9.文件及目录操作 10.Py ...
- 【python笔记】python基础(注释,缩进,变量,表达式,运算符)
目录 python注释: python设计风格: 缩进: python程序的基本要素: 变量: 表达式: python运算符: python注释: #作为单行注释的开始标记 '''对多行注释 pyth ...
- 小甲鱼零基础学python笔记 P20 python变量简单了解
P20 python变量: python默认是不会有返回值样例如下: 先给hello变量赋值,这里选择的是打印print 通过传递变量的将temp=hell()变量后只会返回默认值 需要使用参数ret ...
- 学会Python真的有高收入?「python笔记」Python对象
1. Python对象 Python使用对象模型来存储数据.构造任何类型的值都是一个对象. 所有的Python对象都拥有三个特性:身份,类型和值. 身份: 每一个对象都有一个唯一的身份标识自己,任何对 ...
- 廖雪峰python笔记1 python简介
廖雪峰python笔记 是自己根据廖雪峰的python教程做的一点笔记 1 python简介 1 python简介 廖雪峰python笔记 1.1 python是解释性语言 1.2 Python适合开 ...
- 【python笔记】python模块 datatime模块
模块 使用" import xxx module "导入模块的本质就是: 将xxxmodule .py 中的全部代码加载到内存井执行,然后将整个模块内容赋值给与模块同名的变量,该变 ...
最新文章
- 使用 IntraWeb (36) - TIWServerControllerBase
- javascript的特点
- hive中not in优化
- 4.openstack之mitaka搭建glance镜像服务
- 关于MySQL buffer pool的预读机制
- HTTP协议及POST与GET操作差异,C#中如何使用POST、GET等
- selenium获取新页面标签页(只弹出一个新页面的切换)
- 对比较器的使用方法的研究
- 各个平台下 Perl 源码安装教程
- 隧道管廊UWB定位系统解决方案
- php 单词替换,单词替换 - Shiyin's note
- 国外雅虎邮箱的服务器地址,yahoo
- Android DNK安装笔记
- 手把手教你用VMware安装Centos7.9镜像(史上最详细)
- ktv系统服务器,ktv服务器主机系统
- 等本等息,等额本息,等额本金,看懂再贷款,坑多!
- 帆软(FineReport)---- 数据决策系统的基本配置
- 从GitHub上下载项目后如何运行,学习
- ShaderToy的使用方法
- emqtt 启动报错 Node 'emq@127.0.0.0' not responding to pings.