Python中路径的写法

Python中的路径的写法

windows的路径可以接受“/”“\”,但是由于“\”在python中是作为转义符使用,所以在python中若想路径中使用“\”时,要写成“\\”。

python路径写法

Python中使用路径的时写法:

D:\\testA\\MyTest 转义的方式。表示这里\\是一个普通\字符,由于反斜杠 ‘\’ 要用作转义符, 所以如果要使用反斜杠表示路径,则必须使用双反斜杠。

D:/testA/MyTest 直接用正斜杠表示路径。与linux一样,没有转义的误解。

r’D:/testA/MyTest’ r的全称是raw string,即原始字符串常量,可以让字符保持原来的意思。

但是如果写成了D:\testA\MyTest, 那就错误了,需要使用转义的方式消除歧义,应写成D:\\testA\\MyTest。

【正斜杠,又称左斜杠,符号是“/”;反斜杠,也称右斜杠,符号是“\”。

在Unix/Linux中,路径的分隔采用正斜杠“/”,比如"/demo/test";而在Windows中,正反斜杠二者皆可表示路径,通常看到是用反斜杠“\”,比如D:\testA\MyTest或D:/testA/MyTest。】

关于文件,它有两个关键属性,分别是“文件名”和“路径”。其中,文件名指的是为每个文件设定的名称,而路径则用来指明文件在计算机上的位置。例如, D:\demo\exercise\ projects.docx,也就是说,位于 D 盘下 demo 文件夹中 exercise 子文件夹下有一个文件名为 projects.docx(句点之后的部分称为文件的“扩展名”,它指出了文件的类型)。

Windows系统中,盘符:\ 是根文件夹,如 D:\,也称为 D: 盘。在 OS X 和 Linux 中,根文件夹是 /。

绝对路径:总是从根文件夹开始,Windows系统中以盘符(C:、D:)作为根文件夹,而 OS X 或者 Linux 系统中以 / 作为根文件夹。

相对路径:指的是文件相对于当前工作目录所在的位置。例如,当前工作目录为 D:/testA/MyTest,若文件 demo.txt 就位于这个MyTest文件夹下,则 demo.txt 的相对路径表示为 "./demo.txt"(其中 ./ 就表示当前所在目录)。

import os  
path1=os.path.abspath('.')   #表示当前所处的文件夹的绝对路径  
path2=os.path.abspath('..')  #表示当前所处的文件夹上一级文件夹的绝对路径  

import模块时路径的写法

import不同层级目录中的模块

有一个文件夹/demo/test, 里面有个模块叫myB.py, 我怎么把它import到程序里?

方法一:   

import sys;

sys.path.append("/demo/test/ ")

import myB

方法二(按包的方式使用):

import demo.test.myB

方法三(按包的方式使用):

from demo.test.myB import *

附录、Python中用户自定义包(package)
Python中,早期一个包(package)最基本的要求是包含一个名为__init__.py的空文件,这个文件告诉Python解释器该文件夹是一个包。特别提示:较新的Python版本中(从Python 3.3开始),一个包不需要__init__.py的文件,实际上就是一个目录结构。从用户使用的角度来看,既可以使用普通的包结构(即每个包目录都包含__init__.py文件),也可以使用命名空间包结构(即多个目录组成一个包,每个目录都可能不包含__init__.py文件),使用方式都是一样的。
在Python中,包(package)是一种用于组织和管理模块的形式,其中可以包含其他模块文件和子包。例如:

在其他地方导入该包和模块的示例代码如下:
python
# 导入整个包
import my_package

# 导入包中的模块
from my_package import module1
这样,就可以使用module1和module3模块中的函数、类或变量了。

要使用一个包中的模块,可以使用相对导入或绝对导入的方式进行导入。相对导入使用点号(.)表示当前包的位置,而绝对导入使用包的完整路径。

在module1.py中,如果想导入同级目录下的module2.py,可以使用相对导入:
from . import module2
在module3.py中,如果想导入上一级目录中的module1.py,可以使用两个点号(..):
from .. import module1
相对导入可以方便地在包内部引用其他模块,但无法在独立的脚本文件中使用。
绝对导入:
绝对导入使用包的完整路径来导入模块,可以在独立的脚本文件中使用。
在独立脚本文件中,如果要导入my_package包中的module1.py,可以使用绝对导入:
from my_package import module1
绝对导入需要提供完整的包路径,可以在任何地方使用,但相对导入更具有包内部的局限性。

你想在独立的脚本文件中使用自定义包中的函数、类或变量,你需要将自定义包放在Python的模块搜索路径中的一个位置。换句话说,要想使用绝对导入,需要将自定义包放在Python的模块搜索路径中的一个位置。

你有几种选项来放置自定义包:
☆ 将自定义包直接放置在你运行脚本文件所在的目录:
如果你的独立脚本文件和自定义包位于同一个目录,Python会自动找到并导入包中的内容。
☆ 设置PYTHONPATH环境变量:
你可以将自定义包所在的路径添加到PYTHONPATH环境变量中。这样,Python就能找到并导入你的自定义包。
☆ 使用sys.path.append()方法添加搜索路径:
在你的独立脚本文件中,你可以使用sys.path.append()方法将自定义包所在的路径添加到Python的模块搜索路径中。这样可以临时地将包添加到搜索路径中,以便导入其中的内容。示例代码如下:
import sys
sys.path.append('/path/to/your/custom_package')
from custom_package import module1, module2
请注意,以上方法中,将自定义包放置在当前工作目录或添加到PYTHONPATH环境变量或使用sys.path.append()都会使得Python能够找到并导入你的包中的内容。选择哪种方法取决于你的具体需求和管理习惯。

如果你想使用绝对导入,确保自定义包在Python的模块搜索路径中的一个位置,然后使用完整的包名来导入其中的模块或包。如果你想使用相对导入,可以在包内部直接使用相对路径进行导入。

关于Python包更多情况可见

Python的模块(module)和包(package) https://blog.csdn.net/cnds123/article/details/127222567

python复杂程序的组织讲座 https://blog.csdn.net/cnds123/article/details/108614392

  • 29
    点赞
  • 104
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
1. 确定需要拆分的数据源 首先需要对系统的所有数据源进行调研,确定哪些数据源需要进行拆分。一般来讲,需要考虑以下几个方面: - 数据库的类型和规模:不同的数据库类型和规模可能需要采用不同的方案。 - 数据库的功能和权限:如果数据库需要使用不同的权限登录,需要采用不同的方案。 - 业务需求:如果不同的业务模块需要使用不同的数据源,需要采用不同的方案。 2. 创建多个数据源 根据确定的拆分方案,对应创建多个数据源。可以使用Spring Boot自带的数据源相关组件,如DataSourceAutoConfiguration、JdbcTemplate等,也可以使用第三方的数据源组件,如Druid、Mybatis-Plus等。 3. 配置数据源相关信息 在配置文件,需要对每个数据源进行配置。具体来讲,需要配置数据源地址、用户名、密码等信息,并指定使用的数据源类型。 4. 实现动态数据源切换 当系统需要使用不同的数据源时,需要动态切换数据源。可以使用Spring Boot提供的AbstractRoutingDataSource类来实现动态数据源切换。具体来讲,需要实现AbstractRoutingDataSource的determineCurrentLookupKey()方法,在方法返回当前需要使用的数据源的key值。 5. 配置事务 如果系统使用了事务,需要对事务进行配置。Spring Boot提供了@EnableTransactionManagement注解,可以启用事务。同时,需要对事务进行拆分配置,以便在需要的时候使用对应的数据源。 6. 测试多数据源拆分效果 在完成以上步骤后,需要对多数据源拆分的效果进行测试。可以通过模拟不同的数据源请求来验证系统是否能够正确的使用不同的数据源。同时,需要注意对每个数据源使用的连接数和性能进行监控,保证系统的稳定性和可靠性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学习&实践爱好者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值