我是该领域的新手,我想创建一个有用且快速处理的程序,并运行此脚本,我收到此错误,我无法得到此错误.
# -*- 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)
Run Code Online (Sandbox Code Playgroud)
它发送此错误
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
Run Code Online (Sandbox Code Playgroud)
错误信息应该是清楚的,你不能使用+运算符来求和字符串和字典,也许你想将字典转换为字符串.如果getFTPConfig('Pass')正在返回字典
str(getFTPConfig('Pass'))+"whatever"
Run Code Online (Sandbox Code Playgroud)
web_response = {2L: 67.0, 3L: 13.67, 4L: 10.25, 5L: 11.8, 6L: 11.83}
Run Code Online (Sandbox Code Playgroud)
我有一本名为“web_response”的字典,为了将字典与字符串连接起来,我使用了逗号“,”
print "web_response=", web_response
Run Code Online (Sandbox Code Playgroud)
输出:
web_response= {2L: 67.0, 3L: 13.67, 4L: 10.25, 5L: 11.8, 6L: 11.83}
Run Code Online (Sandbox Code Playgroud)