我注意到我的python脚本是打印括号和引号,例如行:
print ("Password set saved on file:", ps_file_name)
输出以下内容:
('Password set saved on file:', '20180531-1719__password_set.txt')
虽然预期结果是:
Password set saved on file: 20180531-1719__password_set.txt
我做错了吗?
编辑:我的错误我正在运行脚本:
Python pmake.py
而不是直接运行3.6版本的脚本
答案 0 :(得分:1)
这是因为当给出多个参数时,print会写一个元组
str1 = "Hello"
str2 = "world"
print (str1, str2) #will print : (hello, world)
你想要的是
str1 = "Hello"
str2 = "world"
str3 = str1 + str2
print (str3) #will print : Hello world
或者更确切地说
print (str1 + str2) #see how you give only one argument by concatenating str1 and str2 ?
请注意,如果您想要添加两个不是字符串本身的对象,则必须将它们转换为字符串(就好像有字符串一样)。即使两个对象都可以单独打印。
这是因为python不能添加两个不兼容的东西。
x = "your picture is"
y = someimage.jpg
print(x,y) # works well and dandy, gives a tuple
print(x + y)#fails, python can t add up a string and an image
print(x + str(y))# works because str(y) is y casted into a string
请注意,并非所有内容都可以转换为字符串