如何格式化写入输出文件Python 3的内容?

如何格式化写入输出文件Python 3的内容?,python,file,Python,File,我目前正在编写一个代码,读取一个包含“你赢了100吗?是!”的文件,获取每个字符并将其转换为以10为基数的ASCII值,然后将以10为基数的ASCII值转换为用户输入的以2-9为基数的值。所有非字母数字的字符都转换为“.” 我不允许使用内置python函数在基之间进行转换,因此我编写了自己的函数,将基10 ASCII值除以新的基,并将所有余数收集到一个列表中,然后反转该列表,以使新数字的顺序正确 然后,我的代码应该将新的数字和“.”写入out文件,但我不知道如何格式化进入out文件的列表。当我提

我目前正在编写一个代码,读取一个包含“你赢了100吗?是!”的文件,获取每个字符并将其转换为以10为基数的ASCII值,然后将以10为基数的ASCII值转换为用户输入的以2-9为基数的值。所有非字母数字的字符都转换为“.”

我不允许使用内置python函数在基之间进行转换,因此我编写了自己的函数,将基10 ASCII值除以新的基,并将所有余数收集到一个列表中,然后反转该列表,以使新数字的顺序正确

然后,我的代码应该将新的数字和“.”写入out文件,但我不知道如何格式化进入out文件的列表。当我提交代码时,它说“builtins.TypeError:write()不接受关键字参数”。如何将剩余项列表写入输出文件,并将其格式化为单个字符串,而不使用方括号和逗号?谢谢

infile = open("myFile.txt" , "r")
outfile = open("x_myFile.txt" , "w")

userBase = int(inputBase())

for line in infile:  
    for ch in line:
        if ch.isalpha() or ch.isdigit():
            value = int(ord(ch)) 
            remainders = list()
            while value>0:
                remainders.append(value % userBase)
                value//=userBase
            remainders = remainders[::-1]
            outfile.write(*remainders, sep='')
        else:
            outfile.write("..")




infile.close()
outfile.close()
第一次下降
,sep=''
,这是
写入
,而不是
打印

然后,您不能将超过1个参数传递给
write
,当然也不能传递整数

您需要将整数列表转换为数字。我会这样做:

outfile.write("".join(map(int,remainders)))

.write
方法只接受一个参数:要写入的文本或字节字符串。但是,您也可以将
打印
功能与
文件
参数一起使用来写入文件。