python 将列表中的字符串连接成一个长路径的方法

yipeiwu_com7年前Python基础

今天实习公司分配了一个数据处理的任务。在将列表中的字符串连接成一个长路径时,我遇到了如下问题:

import os

path_list = ['first_directory', 'second_directory', 'file.txt']

print os.path.join(path_list)

发现 os.path.join 之后,依然是字符串列表。这我就纳闷了:

['first_directory', 'second_directory', 'file.txt']

细思后想明白了,os.path.join 的输入必须是一个或多个 str ,而不能是 list 。字符串列表的本质依然是list。指令把 字符串列表 理解成了一个 str ,就相当于对 单str 进行 os.path.join ,最后当然没变化啦。

于是我修改了代码:

import os

path_list = ['first_directory', 'second_directory', 'file.txt']

# print os.path.join(path_list)

head = ''
for path in path_list:
 head = os.path.join(head, path)
print head

终于将列表中的字符串连接成了一个完整的长路径:

first_directory/second_directory/file.txt

以上这篇python 将列表中的字符串连接成一个长路径的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python后台开发Django会话控制的实现

页面跳转 页面跳转的url中必须在最后会自动添加【\】,所以在urls.py的路由表中需要对应添加【\】 from django.shortcuts import redirect...

详解Python如何获取列表(List)的中位数

详解Python如何获取列表(List)的中位数

前言 中位数是一个可将数值集合划分为相等的上下两部分的一个数值。如果列表数据的个数是奇数,则列表中间那个数据就是列表数据的中位数;如果列表数据的个数是偶数,则列表中间那2个数据的算术平均...

用python删除java文件头上版权信息的方法

在使用他人代码时,为不保留文件头部版权信息,需要一个个删掉,费时费力, 写了个脚本,简单清除掉目录下所有的文件的头部版权信息。 # -*- coding: utf8 -*- '''...

Python读取指定目录下指定后缀文件并保存为docx

最近有个奇葩要求 要项目中的N行代码 申请专利啥的 然后作为程序员当然不能复制粘贴 用代码解决。。 使用python-docx读写docx文件 环境使用python3.6.0 首先pip...

基于Python中的yield表达式介绍

基于Python中的yield表达式介绍

python生成器 python中生成器是迭代器的一种,使用yield返回函数值。每次调用yield会暂停,而可以使用next()函数和send()函数可以恢复生成器。 这里可以参考Py...