python基础

面向对象(每一个变量都是对象)

Python 是一种简单但功能强大的编程语言,非常适合处理语言数据。下面的 4 行 Python 程序就可以操作 file.txt 文件,输出所有后缀是“ing”的词

for line in open("file.txt"):
...     for word in line.split():
...         if word.endswith('ing'):
...             print(word)

Python 是面向对象语言;每一个变量都是包含特定属性和方法的对象。例如,变量line 的值不仅仅是一个字符串序列。它是一个string 对象,包含一个用来把字符串分割成词的split() 方法(或叫操作)。我们在对象名称后面写上一个点再写上方法名称就可以调用对象的一个方法,例如line.split()。

模块

在Python中,一个.py文件就称之为一个模块(Module)。

导入模块中函数的方式:

方式一:import 模块名
使用时:模块名.函数名()
方式二 :from 模块名 import 函数     
使用时:函数名()

假设我们的abcxyz这两个模块名字与其他模块冲突了,于是我们可以通过来组织模块,避免冲突。方法是选择一个顶层包名,比如mycompany,按照如下目录存放:

mycompany
├─ __init__.py
├─ abc.py
└─ xyz.py

引入了包以后,只要顶层的包名不与别人冲突,那所有模块都不会与别人冲突。现在,abc.py模块的名字就变成了mycompany.abc,类似的,xyz.py的模块名变成了mycompany.xyz
请注意,每一个包目录下面都会有一个__init__.py的文件,这个文件是必须存在的,否则,Python就把这个目录当成普通目录,而不是一个包。__init__.py可以是空文件,也可以有Python代码,因为__init__.py本身就是一个模块,而它的模块名就是mycompany

  • 导入包中函数,以及模块的方式:

方式一:from 包名 import 模块名
使用时:模块名.函数名()
方式二:from 包名.模块名 import 函数名
使用时:函数名()
方式三 :import 包名.模块名
使用的时候 包名.模块名.函数名()
方式四:import 包名
前提是:在包里面的__init__.py 文件里写入 from . import 模块名 , __init__.py里面导入哪个模块,通过本方式就能使用哪个模块
例如:包pygame中的__init__.py 中导入了如下模块
在这里插入图片描述
则在文件中导入pygame后便可以调用Rect()函数,如下:
在这里插入图片描述

模块搜索路径

当我们试图加载一个模块时,Python会在指定的路径下搜索对应的.py文件,如果找不到,就会报错。
默认情况下,Python解释器会搜索当前目录、所有已安装的内置模块和第三方模块,搜索路径存放在sys模块的path变量中:

>>> import sys
>>> sys.path
['', '/anaconda3/envs/alien_inva/lib/python37.zip', '/anaconda3/envs/alien_inva/lib/python3.7', '/anaconda3/envs/alien_inva/lib/python3.7/lib-dynload', '/anaconda3/envs/alien_inva/lib/python3.7/site-packages']
>>> 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值