F.Write()に結果を書く方法
-
21-12-2019 - |
質問
基数にプログラムを書き込みます。ファイル内の数字を指定します。 これが私のコードです:
rsort(a):
if a:
bins = [ [],[],[],[],[],[],[],[],[],[] ]
m = max(a)
r = 1
while m > r:
for e in a:
bins[(e/r)%10].append(e)
r = r * 10
a = []
for i in range(10):
a.extend(bins[i])
bins[i] = []
return a
def readfile(infile):
grid = []
f = open(infile, 'r')
lines = f.readlines()
f.close()
return grid
def writefile(outfile):
grid = []
f = open(outfile, 'w')
f.write()
f.close
return grid
def main():
infile = readfile("radix.in")
outfile = writefile("radix.out")
sortedvar = rsort(infile)
main()
.
SO、F .WRITE()でRSORT()とRSORT(A)のプラグを試してみましたが、それは私に間違って言っています。そして、空のままにすると、関数が1つの引数を必要とする必要があると伝えます。Radix.outで基数ソート結果を印刷するにはどうすればいいですか?
解決
私はあなたの質問が一般的に呼び出しと関数呼び出しについてのようですが、RSORT機能をまったく見ていませんでした。これは可能性です(数字がすべて最初の行にあると仮定して)。
def readfile(infile):
nums = []
f = open(infile, "r")
line = f.readline()
f.close()
return [int(x) for x in line.split()]
def writefile(outfile, nums):
f = open(outfile, 'w')
f.write(' '.join([str(x) for x in nums]))
f.write('\n')
f.close()
def main():
nums = readfile("radix.in")
# nums = rsort(nums)
writefile("radix.out", nums)
main()
. 所属していません StackOverflow