Python 将两个绝对路径拼接

import os

def two_abs_join(abs1, abs2):
    """
    将 绝对路径将两个绝对路径拼接,
    就是将第二个的开路径(windows 的  C, D,E ... Linux 的 /root 最前面的 / 删除掉)
    :param abs1:  为主的路径
    :param abs2:  被拼接的路径
    :return: 拼接后的数值
    """
    # 1. 格式化路径(将路径中的 \\ 改为 \)
    abs2 = os.fspath(abs2)

    # 2. 将路径文件拆分
    abs2 = os.path.splitdrive(abs2)[1]
    # 3. 去掉开头的 斜杠
    abs2 = abs2.strip(‘\\/‘) or abs2
    return os.fspath(os.path.join(abs1, abs2))

user_home = r‘E:\ftp_server\home\zsy‘
get_file_path = r"C:/a/ChromeSetup.exe"

t = two_abs_join(user_home, get_file_path)
print(t)

user_home = r‘/user/path/zsy/‘
get_file_path = r"/root/123.py"
t1 = two_abs_join(user_home, get_file_path)

print(t1)

原文地址:https://www.cnblogs.com/dream4567/p/10013785.html

时间: 2024-08-29 17:00:03

Python 将两个绝对路径拼接的相关文章

Python 安装模块 & 模块搜索路径

1.1   安装模块 1.1.1   安装第三方模块 第三方库都会在Python官方的pypi.python.org网站注册,要安装一个第三方库,必须先知道该库的名称,可以在官网或者pypi上搜索,比如Pillow的名称叫Pillow pip install Pillow 1.1.2   模块搜索路径 当我们试图加载一个模块时,Python会在指定的路径下搜索对应的.py文件,如果找不到,就会报错: >>> import mymodule Traceback (most recent c

python中的模块及路径(2)

如果我们要添加自己的搜索目录,有两种方法: 一是直接修改sys.path,添加要搜索的目录: >>> import sys >>> sys.path.append('C:\PYTHON\TMP\') 这种方法是在运行时修改,运行结束后失效(临时有效). 第二种方法是设置环境变量PYTHONPATH,该环境变量的内容会被自动添加到模块搜索路径中.设置方式与设置Path环境变量类似.注意只需要添加你自己的搜索路径,Python自己本身的搜索路径不受影响. 在Python中,

Python对比两个txt文件内容

difflib模块作为python的标准库模块,无需安装,作用是比对文本之间的差异,且支持输出可读性比较强的html格式. #!coding=utf-8 # 2018-9-19 import sys import difflib # 读取配置文件函数 def read_file(file_name): try: file_handle = open(file_name, 'r') text = file_handle.read().splitlines() # 读取后以行进行分割 file_ha

os.path.join路径拼接的问题

问题一: import os a = os.path.join("/test1", "/test2") print(a) b = os.path.join("/test1", "test2") print(b) 输出:/test2 /test1/test2 使用os.path.join第二个参数的首个字符如果是"/" , 拼接出来的路径会不包含第一个参数 问题二: os.path.join拼接的路径出现了反

微信开发python+django两个月的成功经历,django是个好框架!

时间:大三 上学期没有用微信内置浏览器而纯对话开发,坑了自己好一下. 下学期选错bottle框架,以为轻量好,谁知开发中什么都自己来很痛苦. 选对了框架django,终于在大三最后的个把月里写出了里程碑式的现在这个微信端,自己都感动到,作为我大三一年web开发的终结吧. 亮点1:自带后台管理 亮点2:后台权限管理 亮点3:微信回复规则设置去代码化,图形界面. 亮点4:一平台多网店 技巧:微信规则不匹配时不能回复吗?不是,规则包含空字符总能匹配任意文本,请看下面的微信规则截图. 后台 选择botl

SpringMVC在@RequestMapping配置两个相同路径

这篇博客来自这个问题: 在SpringMVC中@RequestMapping可以配置两个相同的url路径吗. 首先,这个问题会点SpringMVC的人可能都知道答案,但是上次面试中我就回答了可以...可以..Spicy Chicken!!! 参考文章: http://lgbolgger.iteye.com/blog/2105108 这个问题要从 RequestMappingHandlerMapping 和 RequestMappingHandlerAdapter 讲起了. 首先,在配置文件中声明

为Python添加默认模块搜索路径

为Python添加默认模块搜索路径 方法一:函数添加 1) import sys 2) 查看sys.path 3) 添加sys.path.append("c:\\") 方法二:修改环境变量 windows用户可以修改系统环境变量PYTHONPATH 方法三:增加.pth文件,推荐! 在site-packages添加一个路径文件,如mypkpath.pth,必须以.pth为后缀,写上你要加入的模块文件所在的目录名称就是了. 1) windows c:\python27\site-pack

Python获取两个ip之间的所有ip

int_ip = lambda x: '.'.join([str(x/(256**i)%256) for i in range(3,-1,-1)]) ip_int = lambda x:sum([256**j*int(i) for j,i in enumerate(x.split('.')[::-1])]) def get_ips(ip1,ip2): f=open('ips.txt','w') ip1_num = ip_int(ip1) ip2_num = ip_int(ip2) for i i

python获取两个dict的不同

参数: dict1, dict2 需求:如果dict1和dict2中有不同的key,那么返回这个(key, dict1[key]):如果dict1和dict2中有相同的key,但是value不同,返回这个(key, dict1[key]) 实现: def dict_different_data(first, second): """ get the different data bewtten two dicts objects return :result = first