类型错误:无法连接“str"和“dict"对象 [英] TypeError: cannot concatenate 'str' and 'dict' objects

查看:70
本文介绍了类型错误:无法连接“str"和“dict"对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是该领域的新手,我想创建一个有用且处理速度快的程序,运行此脚本时出现此错误,但我无法收到此错误.

I am a novice in the field, and I wanted to create a program that was useful and fast handling, and run this script, I get this error, and I could not get this error.

# -*- coding: cp1252 -*-
import ftplib, os
from ftplib import FTP 

def getFTPConfig(FTPLib):
    if os.path.exists("./incluide/Config.json"):
        with open("./incluide/Config.json") as ConfigFTP:
            FTPConnect = ConfigFTP.read()
    else:
        os.system("title Config FTPConnect")
        Host = raw_input("Enter the host: ")
        Login = raw_input("Enter the login: ")
        Pass = raw_input("Enter de password: ")
        file = open("./incluide/Config.json", "wb")
        file.write('''{"Host": "'''+Host+'''",
 "Login: "'''+Login+'''",
 "Pass: "'''+Pass+'''"}''')
        file.close()
        print "Successfully created"
        os.system("FTP Session")
    try:
        FTPs = json.loads(FTPConnect)
        return FTPs[FTPLib]
    except:
        return {}

    with open("./incluide/Config.json") as ConfigFTP:
        FTPConnect = ConfigFTP.read()
        print('Conectando ao Servidor FTP... Espere um momento...')

        FTPConnect = FTP(Host, Login, Pass)

        File = "Session.py" #Arquivo a ser enviado

        file = open('%s' %(File),'rb')
        print('Conectado.')

        print('Enviando arquivo... Espere um momento...')

        session.storbinary('STOR %s' %(File), file)

        print('Arquivo enviado!')

        file.close()
        session.quit()

if __name__ == "__main__":
    Title = "ERROR CONNECTING TO FTP"
    os.system('cls');os.system('title '+Title)
    FTPError = """
               """+Title+"""
               Check the connection:
               Host: """+getFTPConfig('Host')+"""
               Login: """+getFTPConfig('Login')+"""
               Pass: """+getFTPConfig('Pass')+""""""
    print (FTPError).center(80)
    time.sleep(5)

它发送此错误

Traceback (most recent call last):
  File "C:\Users\Desktop\FTP\Session.py", line 59, in <module>
    Pass: """+getFTPConfig('Pass')+""""""
TypeError: cannot concatenate 'str' and 'dict' objects

推荐答案

错误信息应该说清楚了,你不能用+运算符来求和一个字符串和一个字典,也许你想将字典转换为字符串.如果 getFTPConfig('Pass') 返回字典,则

the error message should be clear, you can't use + operator to sum a string and a dictionary, maybe you want to convert the dict to a string. If getFTPConfig('Pass') is returning a dictionary then

str(getFTPConfig('Pass'))+"whatever"

这篇关于类型错误:无法连接“str"和“dict"对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆