Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python列表帮助:TypeError:无法连接';str';和';列表';物体_Python - Fatal编程技术网

Python列表帮助:TypeError:无法连接';str';和';列表';物体

Python列表帮助:TypeError:无法连接';str';和';列表';物体,python,Python,我正在为主桌面制作一个列表,以读取哪些图标是可执行的,哪些不是。我不断得到错误: TypeError:无法连接'str'和'list'对象 以下是代码示例: 是的,我什么都试过了,只是不想起作用 list0 = ["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""] for filee in fls: if filee.end

我正在为主桌面制作一个列表,以读取哪些图标是可执行的,哪些不是。我不断得到错误: TypeError:无法连接'str'和'list'对象

以下是代码示例: 是的,我什么都试过了,只是不想起作用

    list0 = ["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","",""]
    for filee in fls:
        if filee.endswith(".jex"):
            jkjk = filee
            icon = os.listdir("/Users/"+getpass.getuser()+"/Desktop/"+jkjk+"/Files/Icon")
            for anything in icon:
                if anything.endswith(".png"):
                    fttts = pygame.image.load("/Users/"+getpass.getuser()+"/Desktop/"+jkjk+"/Files/Icon/"+anything)
                    fttts = pygame.transform.scale(fttts, (48, 48))
                    screen.blit(fttts, (15+aaas, 295+fasdd))
                    print("aaas = "+str(aaas))
                    print("fasdd = "+str(fasdd))
                    fasdd = fasdd + 45

                    if fasdd >= winy-295-63:
                        aaas = aaas + 63
                        fasdd = -280
            jkjk = jkjk+"/Files/Executable"
            jkjk = os.listdir("/Users/"+getpass.getuser()+"/Desktop/"+jkjk)
            for exfilepy in jkjk:
                if exfilepy.endswith(".py"):
                    for o in os.listdir("/Users/"+getpass.getuser()+"/Desktop/"+jkjk+execfilepy):
                        ftttThis[o] = [str(os.listdir("/Users/"+getpass.getuser()+"/Desktop/"+jkjk+execfilepy)[o])]
                    for i in list0:
                        list0[i] = ftttThis[i]
.jex是一个自定义扩展,不会导致问题。这就是清单

输出:

Traceback (most recent call last):
  File "/Users/kf9z/Desktop/JupeeGUIFiles 2/JUPEE_GUI_WINDOWS copy.py", line 750, in <module>
    top().top()
  File "/Users/kf9z/Desktop/JupeeGUIFiles 2/JUPEE_GUI_WINDOWS copy.py", line 418, in top
    lock().locked()
  File "/Users/kf9z/Desktop/JupeeGUIFiles 2/JUPEE_GUI_WINDOWS copy.py", line 338, in locked
    lock().unlocked()
  File "/Users/kf9z/Desktop/JupeeGUIFiles 2/JUPEE_GUI_WINDOWS copy.py", line 410, in unlocked
    setup().setdesk()
  File "/Users/kf9z/Desktop/JupeeGUIFiles 2/JUPEE_GUI_WINDOWS copy.py", line 191, in setdesk
    for o in os.listdir("/Users/"+getpass.getuser()+"/Desktop/"+jkjk+execfilepy):
TypeError: cannot concatenate 'str' and 'list' objects
回溯(最近一次呼叫最后一次):
文件“/Users/kf9z/Desktop/JupeeGUIFiles 2/JUPEE_GUI_WINDOWS copy.py”,第750行,在
top().top()
文件“/Users/kf9z/Desktop/JupeeGUIFiles 2/JUPEE_GUI_WINDOWS copy.py”,顶部第418行
lock().locked()
文件“/Users/kf9z/Desktop/JupeeGUIFiles 2/JUPEE_GUI_WINDOWS copy.py”,第338行,锁定
lock().unlocked()
文件“/Users/kf9z/Desktop/JupeeGUIFiles 2/JUPEE_GUI_WINDOWS copy.py”,第410行,未锁定
setup().setdesk()
setdesk中的文件“/Users/kf9z/Desktop/JupeeGUIFiles 2/JUPEE_GUI_WINDOWS copy.py”,第191行
对于os.listdir中的o(“/Users/”+getpass.getuser()+”/Desktop/“+jkjk+execfilepy):
TypeError:无法连接'str'和'list'对象

这是Python2.7(或2.x)

您将
jkjk
更改为以下列表:

jkjk = os.listdir("/Users/"+getpass.getuser()+"/Desktop/"+jkjk)
然后尝试将其连接到字符串:

os.listdir("/Users/"+getpass.getuser()+"/Desktop/"+jkjk+execfilepy):
如果需要原始的
jkjk
,则将列表分配给某个新变量:

jkjk = jkjk+"/Files/Executable"
lis = os.listdir("/Users/"+getpass.getuser()+"/Desktop/"+jkjk) 
for exfilepy in lis:
     #your code

它实际上并不是告诉它哪些是可执行的,哪些不是可执行的,而是告诉它不要创建一个空字符串列表,创建一个空列表并使用
lis0.append()
添加新元素。它告诉它:不管桌面上有多少额外的图标:转到列表0[]查找图标指向的目录。变量名是什么<代码>jkjk<代码>aaas<代码>fasdd<代码>fttts?