将数字写入文件 - 检查代码

时间:2016-08-02 20:23:37

标签: python python-3.x file-writing

我参加了我的第一次CS课程,并且我将在周五完成作业。 我只是想让某人检查我的代码,并确保它的工作/遵循指示。

说明:

编写一个程序:

1)从用户获取数字文本文件的名称。文件中的每个数字都在各自的行上。

2)一次一个地读取这些数字

3)将偶数写入名为even.txt的文件

4)将奇数写入名为odd.txt

的文件

5)向用户显示正数和负数的总和。

这是我有什么

def main():

    #Open text file for reading
    numberFile = open(r'numberFile.txt', 'r')

#Priming read
    number = numberFile.readline()

#Setting up loop to continue reading until
#an empty line is reached
    total = 0
    count = 0
    while number != '':
        number = float(number)                  #convert from string to number
        if number%2 == 0:                       
            evenNumber = open('even.txt', 'w')  #writes even numbers into a file
            evenNumber.write(number + '\n')
        else:
            oddNumber  = open('odd.txt', 'w')   #writes odd numbers into a file
            oddNumber.write(number + '\n')

        for number in numberFile:
            number = float(number)      #convert from string to number

            if number <= 0:             #identify negative numbers
                count +=1               #count negative numbers

            if number >= 0:             #identify positive numbers
                total += number           #sum of positive numbers
        number = numberFile.readline()

    numberFile.close()                  #close file after program is complete
main()

1 个答案:

答案 0 :(得分:0)

虽然这不是代码审查网站,但我会给你一些指示。

  1. 您永远不会从用户那里获得文件名 - 您应该添加它。它将类似于filename = input('Enter filename: ')
  2. 每次使用even.txt打开时,都会覆盖odd.txt'w'。考虑使用'a+'
  3. 您永远不会输出totalcount。尝试使用print
  4. 除此之外,有更好的方法来打开文件进行这些操作,但我会让你在将来的课程中学习。