[Python-ideas] Framework for Python for CS101
Terry Reedy
tjreedy at udel.edu
Tue May 26 07:54:36 CEST 2015
On 5/25/2015 10:56 PM, Rustom Mody wrote:
> It would be rather ridiculous to remove the print from a realistic language.
> However if you've taught enough beginners you'd know how hard it is to
> get beginners to write
> ... return <something>
> as against
> ... print (<something>)
Programming is composition, the connections of outputs to inputs (as
with circuit design). 'Print' is the enemy of composition. We agree so far.
If submitting code with 'print' instead of 'return' gets a grade of 0 or
'fail', don't people learn fairly quickly? If assignments are partially
test-defined and automatically test-graded, 'print' rather than 'return'
will fail. Example: 'write a function that returns a tuple of the
number of positive and negative values in an finite iterable of signed
numbers', followed by examples with the caveat that the grading test
will have other inputs and expected outputs.
> And so in an early teachpack, I'd disable the print statement.
Print is essential for debugging. You should only want to disallow
print in the final submission of function code, as suggested above.
--
Terry Jan Reedy
More information about the Python-ideas
mailing list