【问题标题】:Writing numbers into a file- check code将数字写入文件检查代码
【发布时间】:2016-08-02 20:23:37
【问题描述】:

我正在上我的第一次 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()

【问题讨论】:

  • SO 不是代码审查或家庭作业修订网站。如果您的代码有问题,请通过显示无效输出或错误代码来明确指出什么不工作,并解释您的预期输出是什么。
  • codereview.stackexchange.com/questions/ask 一个codereview网站,虽然
  • @WayneWerner 但他们仍然希望您提出具体问题,而不仅仅是发布一堆代码。
  • 这不就是老师在给作业评分时会做的吗?为什么你需要我们做他们的工作?
  • @Barmar 大概是 OP 想在作业中取得好成绩,并正在寻求历史上某个时候很可能在那里的人的帮助。

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


【解决方案1】:

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

  1. 你永远不会从用户那里得到文件名——你应该添加它。类似于filename = input('Enter filename: ')
  2. 每次使用'w' 打开even.txtodd.txt 时都会覆盖它。考虑使用'a+'
  3. 您永远不会输出totalcount。尝试在这些上使用print

除此之外,还有更好的打开文件的方法是执行这些操作,但我会让你在以后的课程中学习这些。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-01
    • 2011-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多