我试图将一些输入添加到一起形成一个文件名,但它们之间似乎有空格,我试图使用replace和join来摆脱空格。但它表示连接未定义,'tuple'对象没有属性'replace'。请帮忙 我的代码是:
from turtle import Turtle, Screen
def k100():
tsave = Turtle()
tsavescreen = tsave.getscreen()
pictype = input("What type of photo would you like this to be saved as? (png, jpg, pdf, ...) ")
name = input("What would you like to call your masterpiece? ")
fnws = name,".",pictype #fnws means file_name_with_spaces
join(fnws)
fnns = fnws.replace(" ", "") #fnns means file_name_no_spaces
tsavescreen.getcanvas().postscript(file=fnns, colormode='color')
#open("C:\Users\GURNHH\OneDrive - Rugby School\ICT\Python").close()
#open("pythontest11.pdf").close()
print("It has been saved as: ", fnns)
print("It has been saved as: ", fnns)
答案 0 :(得分:1)
使用,
创建一个元组,你需要的是一个字符串,你应该执行以下操作:
变化:
fnws = name,".",pictype
要:
fnws = name, + "." + pictype
现在,fnws
是一个String变量,因此您可以对其应用替换。
另外,考虑使用strip方法,使用strip你可以删除你想要的任何字符,只需写入(默认是删除whitespcace):
fnws = (name, + "." + pictype).strip()
string.strip(s [,chars])
返回带有前导和尾随字符的字符串副本 除去。如果省略chars或None,则为空白字符 除去。如果给定而不是None,则字符必须是字符串;那些角色 在字符串中将从字符串的两端剥离掉 调用方法。
答案 1 :(得分:0)
如果变量具有前导和/或尾随空格,则可以调用strip函数。你像这样使用它
fnws = "{}.{}".format(name.strip(),pictype.strip())
有关条带功能的更多信息,请访问strip doc