python学习17天


今日内容:
1、循环导入问题
2、py文件的两种用途
3、模块的搜索路径优先级
4、软件开发的目录规范

5、内置函数
6、内置模块

1.run.py

x=1
import m1

print(m1.x)
print(m1.y)

m1.f1()

import m2

m2.f2()

2.m1.py

print('正在导入m1')

def f1():
    from m2 import y
    print(x,y)

x='m1'

3.m2.py

print('正在导入m2')

def f2():
    from m1 import x
    print(x,y)

y='m2'

一:模块的搜索路径与查找优先级

(1) 先从内存中已经导入的模块里找

import mmm
mmm.f1()

import time
time.sleep(15)

print('='*50)
import mmm
mmm.f1()

(2) 然后再查找内置的模块

import sys
print(sys.modules)


import sys
print(sys.path)

当前执行文件所在的文件夹

import logging
print(logging)

(3) 最后去sys.path列表中存放的多个文件夹里依次检索
示例1:

import sys
print(sys.path)
sys.path.append(r'D:\python全栈15期\aaa\bbb')

import ccc

ccc.f1()

示例2:

import sys
print(sys.path)
import aaa.bbb.ccc as c
c.f1()

from aaa.bbb import ccc
ccc.f1()

区分py文件的两种用途:

#1、直接运行
#2、被当作模块导入
import spam

def f1():
    print('spam.f1')


def f2():
    print('spam.f2')


 print(__name__)  # 当文件被当作脚本直接执行时,__name__值为"__main__"
 print(__name__)  # 当文件被当作模块导入时,__name__值为"模块名"

if __name__ == '__main__':
    print("文件被当作脚本执行时要做的事情")
    f1()
    f2()
Building wheel for quickjs (setup.py) ... error error: subprocess-exited-with-error × python setup.py bdist_wheel did not run successfully. │ exit code: 1 ╰─> [12 lines of output] running bdist_wheel running build running build_py creating build\lib.win-amd64-cpython-313\quickjs copying quickjs\__init__.py -> build\lib.win-amd64-cpython-313\quickjs running build_ext building '_quickjs' extension creating build\temp.win-amd64-cpython-313\Release creating build\temp.win-amd64-cpython-313\Release\upstream-quickjs "D:\Visual Studio\Visual Studio 2022\Community\VC\Tools\MSVC\14.43.34808\bin\HostX86\x64\cl.exe" /c /nologo /O2 /W3 /GL /DNDEBUG /MD -DCONFIG_VERSION=\"2021-03-27\" -DCONFIG_BIGNUM -IE:\Python3\include -IE:\Python3\Include "-ID:\Visual Studio\Visual Studio 2022\Community\VC\Tools\MSVC\14.43.34808\include" "-ID:\Visual Studio\Visual Studio 2022\Community\VC\Tools\MSVC\14.43.34808\ATLMFC\include" "-ID:\Visual Studio\Visual Studio 2022\Community\VC\Auxiliary\VS\include" "-ID:\Windows Kits\10\include\10.0.22621.0\ucrt" "-ID:\Windows Kits\10\\include\10.0.22621.0\\um" "-ID:\Windows Kits\10\\include\10.0.22621.0\\shared" "-ID:\Windows Kits\10\\include\10.0.22621.0\\winrt" "-ID:\Windows Kits\10\\include\10.0.22621.0\\cppwinrt" /Tcmodule.c /Fobuild\temp.win-amd64-cpython-313\Release\module.obj -Werror=incompatible-pointer-types cl: 命令行 error D8021 :无效的数值参数“/Werror=incompatible-pointer-types” error: command 'D:\\Visual Studio\\Visual Studio 2022\\Community\\VC\\Tools\\MSVC\\14.43.34808\\bin\\HostX86\\x64\\cl.exe' failed with exit code 2 [end of output] note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for quickjs Running setup.py clean for quickjs Failed to build quickjs ERROR: Failed to build installable wheels for some pyproject.toml based projects (quickjs)
03-23
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值