希望将打印输出(字符串)分配给变量

时间:2016-04-07 14:19:41

标签: python

在过去的两天里,我一直在努力做一些我确信很容易的事情。不幸的是我不太了解python(实际上几乎没有),我只是想编辑一个脚本来工作。

基本上它应该查看文件夹,获取文件名并将文件名分配给变量。但我尝试的一切都失败了:

filepath = "/folder/*.*/"
for path in glob.glob(filepath):
  dirname, filename = os.path.split(path)
  print(filename)[0:-19]

var1 = filename
var2 = filename[0:-25]

我试过

var1 = str(filename)

但没有任何作用。 任何建议将不胜感激!

4 个答案:

答案 0 :(得分:1)

def GetFileList(FindPath,FlagStr=[]):  
    ''''' 
    #>>>FlagStr=['F','EMS','txt'] # Characters need to include
    #>>>FileList=GetFileList(FindPath,FlagStr) # 
    '''  
    import os  
    FileList=[]  
    FileNames=os.listdir(FindPath)  
    if (len(FileNames)>0):  
        for fn in FileNames:  
            if (len(FlagStr)>0):  
                #return Specified filename  
                if (IsSubString(FlagStr,fn)):  
                    fullfilename=os.path.join(FindPath,fn)  
                    FileList.append(fullfilename)  
            else:  
                #return all filename  
                fullfilename=os.path.join(FindPath,fn)  
                FileList.append(fullfilename)  

     #sort filename
     if (len(FileList)>0):  
         FileList.sort()  

     return FileList  

答案 1 :(得分:0)

这可能是一个简单的缩进问题。目前,var1var2 for循环之外。我没有彻底研究你的脚本或它的输出,但是我在下面做的事情会将filename的值赋给var1并指定一段文件名(从开头到字符25个地方)从最后到var2

filepath = "/folder/*.*/"
for path in glob.glob(filepath):
  dirname, filename = os.path.split(path)
  print(filename)[0:-19]
  var1 = filename
  var2 = filename[0:-25]
  print(var1)
  print(var2)

答案 2 :(得分:0)

现在编写代码的方式,它会为文件夹中的文件数打印许多文件名,丢弃filename变量并在新路径上再次运行。如果有for循环,则每次迭代都会丢弃变量,以便为新变量腾出空间。所以这段代码:

filepath = "/folder/*.*/"

for path in glob.glob(filepath):
    dirname, filename = os.path.split(path)
    print( filename )[0:-19]

Var1 = filename
Var2 = filename[0:-25]

最初为您提供的每个路径运行,然后在vars中引用它时保留仅最后一个文件名。我想你想要的是这样的:

for path in filepath:
  dirname, filename = os.path.split(path)
  print(filename[0:-19])
  var1 = filename
  var2 = filename[0:-25]

从那里,您可以使用var1var2执行任何操作。

答案 3 :(得分:0)

试试这个并从那里开始工作:

import os

filepath = "/"

var1 = os.listdir(filepath)
var2 = os.listdir(filepath)[2]

print var1
print
print var2