python模块

本文深入讲解Python中的模块导入机制,包括如何使用import语句引入模块,模块的执行时机,以及如何通过from...import语句导入特定函数。同时,介绍了Python标准库中的sys模块,演示了如何获取命令行参数和Python路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import1文件

#!/usr/bin/python3
# 文件名: using_sys.py

# 1、import sys 引入 python 标准库中的 sys.py 模块;这是引入某一模块的方法。
# 2、sys.argv 是一个包含命令行参数的列表。
# 3、sys.path 包含了一个 Python 解释器自动查找所需模块的路径的列表。
import sys

print('命令行参数如下:')
for i in sys.argv:
    print(i)

print('\n\nPython 路径为:', sys.path, '\n')

# 创建函数
def print_func( par ):
    print ("Hello : ", par)
    return


# 斐波那契(fibonacci)数列模块
def fib(n):  # 定义到 n 的斐波那契数列
    a, b = 0, 1
    while b < n:
        print(b, end=' ')
        a, b = b, a + b
    print()


def fib2(n):  # 返回到 n 的斐波那契数列
    result = []
    a, b = 0, 1
    while b < n:
        result.append(b)
        a, b = b, a + b
    return result

import2文件

# 导入模块

# 一个模块只会被导入一次,不管你执行了多少次import。这样可以防止导入模块被一遍又一遍地执行。
import import1

# 现在可以调用模块里包含的函数了
import1.print_func("Runoob")

# 这样做并没有把直接定义在fibo中的函数名称写入到当前符号表里,只是把模块fibo的名字写到了那里。
# 可以使用模块名称来访问函数
import1.fib(1000)
import1.fib2(100)
import1.__name__

# Python 的 from 语句让你从模块中导入一个指定的部分到当前命名空间中
from import1 import print_func,fib, fib2
import1.print_func("Runoob")
import1.fib(1000)
import1.fib2(100)

# 把一个模块的所有内容全都导入到当前的命名空间也是可行的
from import1 import *
import1.print_func("Runoob")
import1.fib(1000)
import1.fib2(100)
# 也可以简化写法
fib(1000)

# 一个模块被另一个程序第一次引入时,其主程序将运行。如果我们想在模块被引入时,模块中的某一程序块不执行,我们可以用__name__属性来使该程序块仅在该模块自身运行时执行
# 说明: 每个模块都有一个__name__属性,当其值是'__main__'时,表明该模块自身在运行,否则是被引入。
# 说明:__name__ 与 __main__ 底下是双下划线, _ _ 是这样去掉中间的那个空格。
if __name__ == '__main__':
   print('程序自身在运行')
else:
   print('我来自另一模块')

# 内置的函数 dir() 可以找到模块内定义的所有名称。以一个字符串列表的形式返回
  

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值