basenamepython
1. python 怎么实现两台服务器上批量复制文件
1、把excel里文件名那一列复制,粘进一个空白的文本文件,命名为filelist.txt,上传到服务器。
2、在服务器上使用脚本导出,python脚本 fileCp.py 。
代码示例:
#! python
#coding:utf-8
##!/usr/bin/python
# Filename : fileCp.py
import sys
import os
import shutil
fileList='filelist.txt'
targetDir='files'
filedir = open(fileList)
line = filedir.readline()
log = open('running.log','w')
while line:
line = line.strip('\n');
basename = os.path.basename(line)
exists = os.path.exists(line)
if exists :
print ' '+line+' to '+os.getcwd()+'/'+targetDir+'/'+basename
log.write(' '+line+' to '+os.getcwd()+'/'+targetDir+'/'+basename+'\r\n')
shutil.(line,targetDir+'/'+basename)
else:
print line+' not exists'
log.write(line+' not exists'+'\r\n')
line = filedir.readline()
log.close()
2. python 路径名路径下的文件名字改为路径名
OS中f的导入路径= ' d:\ workspace \ python \ file path \我是好人'。listdir(路径):OS。重命名(悲怆。塞夫,悲怆。塞波斯。路径。basename (path) f) path是路径,末尾没有斜杠,代码修改路径下的所有文件。
3. python怎样获取当前打开的文件的文件名
import os.path
f1 = open(m,'r') #打开文件
filename=os.path.basename(f1.name) #用f1.name得到文件路径,os.path.basename得到文件名
4. Python的os库的使用
python os库有很多和操作系统相关的功能。
其实不仅仅如此,os库中还有很多和文件,路径,执行系统命令相关的。
下面是os模块常用的方法.
1.os.sep 可以取代操作系统特定的路径分割符
2.os.name 字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'
3.os.getcwd() 函数得到当前工作目录,即当前Python脚本工作的目录路径
4.os.getenv() 用来读取环境变量
5.os.putenv() 用来设置环境变量
6.os.listdir() 返回指定目录下的所有文件和目录名
7os.remove() 函数用来删除一个文件
8.os.system() 函数用来运行shell命令
9.os.linesep 字符串给出当前平台使用的行终止符。例如,Windows使用'/r/n',Linux使用'/n'而Mac使用'/r'。
10.os.path.split() 函数返回一个路径的目录名和文件名
11.os.path.isfile() 检验给出的路径是一个文件
12os.path.isdir() 检验给出的路径是一个目录
13.os.path.existe() 函数用来检验给出的路径是否真地存在
14.os.listdir(dirname) 列出dirname下的目录和文件
15.os.getcwd() 获得当前工作目录
16.os.curdir 返回当前目录('.')
17.os.chdir(dirname) 改变工作目录到dirname
os.path都是和路径指定的文件,目录,和路径字符串有关系的函数
os.path.isdir(name) 判断name是不是一个目录,name不是目录就返回false
os.path.isfile(name) 判断name是不是一个文件,不存在name也返回false
os.path.exists(name) 判断是否存在文件或目录name
os.path.getsize(name) 获得文件大小,如果name是目录返回0L
os.path.abspath(name) 获得绝对路径
os.path.normpath(path) 规范path字符串形式
os.path.split(name) 分割文件名与目录(事实上,如果你完全使用目录,它也会将最后一个目录作为文件名而分离,同时它不会判断文件或目录是否存在)
os.path.splitext() 分离文件名与扩展名
os.path.join(path,name) 连接目录与文件名或目录
os.path.basename(path) 返回文件名
os.path.dirname(path) 返回文件路径
5. python 如何提取文件名
Python 获取文件名的方法
导入os 模块
使用os.path.basename()
回车之后,即可得到文件名
其他注意事项:
6. 如何用python查询文件路劲
最近在用Python脚本处理文件夹下面的文件名的搜索和重命名。其中碰到如何递归遍历文件夹下面所有的文件,找到需要的文件,并且重命名的问题。其实如果看看Python的document,还是比较简单的,这里直接给出使用方法,免得大家还要花精力去查找。
环境:
文件夹结构:
----path1
----path1-1
----path1-1.1.txt
----path1-2
----path1.1.txt
----path2
----recursiveDir.py
文件夹结构如上所示。
代码分析(recursiveDir.py):
[python] view plain
<span style="font-size:18px;">import os
'''''
本脚本用来演示如何遍历py脚本所在文件夹下面所有的文件(包括子文件夹以及其中包含的文件)。
重点演示如何获取每个文件的绝对路径。注意os.path.join(dirpath, filename)的用法。
'''
rootdir = os.getcwd()
print('rootdir = ' + rootdir)
for (dirpath, dirnames, filenames) in os.walk(rootdir):
#print('dirpath = ' + dirpath)
for dirname in dirnames:
print('dirname = ' + dirname)
for filename in filenames:
#下面的打印结果类似为:D:\pythonDirDemo\path1\path1-1\path1-1.1.txt
print(os.path.join(dirpath, filename))
if(filename=='path1-1.1.txt'):
os.chdir(dirpath)
#os.rename(os.path.join(dirpath, filename), dirpath + os.sep + 'path1-1.1.new.txt')
os.rename('path1-1.1.txt', 'path1-1.1.new.txt')
#os.remove(os.path.join(dirpath, filename))
#下面的输出为fileName = path1-1.1.txt,并未包含绝对路径,所以需要使用os.path.join来链接,获取绝对路径
print('fileName = ' + filename)
print('------------------one circle end-------------------')</span>
所以可以看到程序中使用os.path.join(dirpath, filename)来拼接出绝对路径出来。注意下面的重命名用法,可以将工作目录切换到os.chdir(dirpath),这样就可以直接用os.rename(oldfile, newfile).Python会自动到dirpath下面查找oldfile并且重命名为newfile。注意工作目录的含义:在Python的GUI中,使用os.getcwd()可以获取到当前工作目录。测试如下:
[html] view plain
<span style="font-size:18px;">>>> os.chdir('D:')
>>> os.getcwd()
'D:\\pythonDirDemo\\path1\\path1-1'
>>> os.chdir('D:\\')
>>> os.getcwd()
'D:\\'</span>
可见却是可以用chdir改变工作目录。这个代码只是在重命名的时候用到的小技巧而已,大家知道有这个东西就行了,不过调用chdir之后,后续再获取getcwd()就会被影响,所以警惕。
7. python文件名获取文件路径
概述
使用os.path.abspath()函数来获取文件绝对路径
解析
文件目录结构如下:
os.path.abspath(path)返回path规范化的绝对路径(但这个路径不一定是真实的路径),如果path仅是一个文件名,使用该函数后返回的路径是当前工作目录路径连接改文件名后所组成的新的路径名。
>>> import os.path
>>> os.path.abspath("a.py")
'C:\Users\Administrator\a.py'
os.path.split(path)将path分割成目录和文件名二元组返回
>>> os.path.split("C:\Users\Administrator\a.py")
('C:\Users\Administrator', 'a.py')
os.path.dirname(path)返回path的目录,其实就是os.path.split(path)的第一个元素
>>> os.path.dirname("C:\Users\Administrator\a.py")
'C:\Users\Administrator'
os.path.basename(path)返回path最后的文件名。如果path以/或结尾,就会返回空值。即os.path.split(path)的第二个元素。
>>> os.path.basename("C:\Users\Administrator\a.py")
'a.py'
os.path.commonprefix(list)返回list中所有path共有的最长的路径,从左向右,相同字符。
os.path.exists(path)如果path存在,返回True;如果path不存在,返回False。
os.path.isabs(path)如果path是绝对路径,返回True。
os.path.normpath(path)规范path字符串形式(规范文件路径)
os.path.isfile(path)判断路径是否为文件,是返回True,否则返回False
os.path.isdir(path)如果path是一个存在的目录,返回True,否则返货False。
os.path.islink(path)是否是链接;但如果系统不支持链接,则返回False。
8. python os.path.basename()方法
返回path最老蠢后的文件名。如果李含吵path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素。
>>> os.path.basename('c:\test.csv')
'test.csv'
>>> os.path.basename('c:\csv')
'csv' (这里csv被当作文件名处哪侍理了)
>>> os.path.basename('c:\csv\')
''
9. python中怎么提取主文件名
import os.path
basename=os.path.basename(filename)
mainfilename=(os.path.splitext(basename))[0]
10. 用python实现将一个目录下面的文件换成文件夹的名字+特定字符
importos
path='D:\workspace\python\filepath\我是好租蔽人'
forfinos.listdir(path):
os.rename(path+os.sep+f,path+os.sep+os.path.basename(path)+f)
path为路径,末尾不加斜杠,代缺型岩码修改伏御path下的所有文件