Exercise: Reverting Lines of a File

Write a program revert.py that takes a filename from the commandline, and outputs every line of the file with the line’s characters reversed. (Take care to strip off the linefeeds, or otherwise the linefeed will come first in the reversed line.)

Dependencies

cluster_python Python Programming: From Absolute Beginner to Advanced Productivity cluster_python_basics Python: The Language Fundamentals cluster_python_exercises Exercises cluster_python_exercises_legacy Exercises (Legacy) python_basics_python_0170_if The if Statement python_basics_python_0160_boolean Boolean python_basics_python_0170_if->python_basics_python_0160_boolean python_basics_python_0110_blahblah Blahblah python_basics_python_0220_for for Loops python_basics_python_0200_sequential_types Sequential Datatypes python_basics_python_0220_for->python_basics_python_0200_sequential_types python_basics_python_0193_while while Loops python_basics_python_0220_for->python_basics_python_0193_while python_basics_python_0150_datatypes_overview_compound Compound Datatypes python_basics_python_0150_datatypes_overview Datatypes python_basics_python_0150_datatypes_overview_compound->python_basics_python_0150_datatypes_overview python_basics_python_0140_variables Variables python_basics_python_0150_datatypes_overview->python_basics_python_0140_variables python_basics_python_0130_syntax_etc Syntax etc. python_basics_python_0120_helloworld Hello World python_basics_python_0130_syntax_etc->python_basics_python_0120_helloworld python_basics_python_0125_running Running Python Programs python_basics_python_0125_running->python_basics_python_0120_helloworld python_basics_python_0225_range The range Function python_basics_python_0225_range->python_basics_python_0220_for python_basics_python_0225_range->python_basics_python_0200_sequential_types python_basics_python_0300_strings More About Strings python_basics_python_0300_strings->python_basics_python_0150_datatypes_overview python_basics_python_0300_strings->python_basics_python_0200_sequential_types python_basics_python_0250_refs_flat_deep_copy References, (Im)mutability python_basics_python_0300_strings->python_basics_python_0250_refs_flat_deep_copy python_basics_python_0200_sequential_types->python_basics_python_0150_datatypes_overview_compound python_basics_python_0250_refs_flat_deep_copy->python_basics_python_0150_datatypes_overview_compound python_basics_python_0250_refs_flat_deep_copy->python_basics_python_0150_datatypes_overview python_basics_python_0250_refs_flat_deep_copy->python_basics_python_0140_variables python_basics_python_0139_commandline_argv Commandline Arguments (sys.argv) python_basics_python_0139_commandline_argv->python_basics_python_0130_syntax_etc python_basics_python_0139_commandline_argv->python_basics_python_0125_running python_basics_python_0140_variables->python_basics_python_0130_syntax_etc python_basics_python_0310_strings_formatting String Formatting python_basics_python_0310_strings_formatting->python_basics_python_0300_strings python_basics_python_0270_functions Functions python_basics_python_0270_functions->python_basics_python_0150_datatypes_overview python_basics_python_0270_functions->python_basics_python_0140_variables python_basics_python_0193_while->python_basics_python_0170_if python_basics_python_0193_while->python_basics_python_0160_boolean python_basics_python_0120_helloworld->python_basics_python_0110_blahblah python_basics_python_0160_boolean->python_basics_python_0150_datatypes_overview python_basics_python_0330_strings_encoding Strings and Encoding python_basics_python_0330_strings_encoding->python_basics_python_0300_strings python_basics_python_0320_strings_methods Miscellaneous String Methods python_basics_python_0320_strings_methods->python_basics_python_0300_strings python_basics_python_0500_files File I/O python_basics_python_0500_files->python_basics_python_0220_for python_basics_python_0500_files->python_basics_python_0330_strings_encoding python_exercises_legacy_dict_keyerror Exercise: Dictionary: Errors? python_exercises_legacy_dict_keyerror->python_basics_python_0150_datatypes_overview_compound python_exercises_legacy_uniq_plain Exercise: Sort out Duplicates python_exercises_legacy_uniq_plain->python_basics_python_0150_datatypes_overview_compound python_exercises_legacy_mixed_list_executable Exercise: Mixed List (Executable Program) python_exercises_legacy_mixed_list_executable->python_basics_python_0150_datatypes_overview_compound python_exercises_legacy_mixed_list_executable->python_basics_python_0150_datatypes_overview python_exercises_legacy_mixed_list_executable->python_basics_python_0140_variables python_exercises_legacy_mixed_list_executable->python_basics_python_0120_helloworld python_exercises_legacy_mixed_list_executable->python_basics_python_0160_boolean python_exercises_legacy_mixed_list_interactive Exercise: Mixed List (Interactive Interpreter) python_exercises_legacy_mixed_list_executable->python_exercises_legacy_mixed_list_interactive python_exercises_legacy_while_primeness Exercise: Primeness (while) python_exercises_legacy_while_primeness->python_basics_python_0139_commandline_argv python_exercises_legacy_while_primeness->python_basics_python_0193_while python_exercises_legacy_cmdline_digit Exercise: Digit to English Word python_exercises_legacy_while_primeness->python_exercises_legacy_cmdline_digit python_exercises_legacy_mixed_list_interactive->python_basics_python_0150_datatypes_overview_compound python_exercises_legacy_mixed_list_interactive->python_basics_python_0150_datatypes_overview python_exercises_legacy_mixed_list_interactive->python_basics_python_0140_variables python_exercises_legacy_mixed_list_interactive->python_basics_python_0160_boolean python_exercises_legacy_revert Exercise: Reverting Lines of a File python_exercises_legacy_revert->python_basics_python_0139_commandline_argv python_exercises_legacy_revert->python_basics_python_0500_files python_exercises_legacy_wc Exercise: Counting Lines, Words, Characters python_exercises_legacy_revert->python_exercises_legacy_wc python_exercises_legacy_python_0350_exercises Exercise: String (Right-Justify) python_exercises_legacy_python_0350_exercises->python_basics_python_0300_strings python_exercises_legacy_python_0350_exercises->python_basics_python_0310_strings_formatting python_exercises_legacy_python_0350_exercises->python_basics_python_0320_strings_methods python_exercises_legacy_join_function Exercise: Functions: join() python_exercises_legacy_python_0350_exercises->python_exercises_legacy_join_function python_exercises_legacy_function_primeness Exercise: Primeness (Function) python_exercises_legacy_function_primeness->python_basics_python_0139_commandline_argv python_exercises_legacy_function_primeness->python_basics_python_0270_functions python_exercises_legacy_max_numbers_function Exercise: Determine Maximum of Two Numbers (Function) python_exercises_legacy_function_primeness->python_exercises_legacy_max_numbers_function python_exercises_legacy_max_numbers_function->python_basics_python_0270_functions python_exercises_legacy_max_numbers Exercise: Determine Maximum of Two Numbers python_exercises_legacy_max_numbers_function->python_exercises_legacy_max_numbers python_exercises_legacy_for_primeness Exercise: Primeness (for) python_exercises_legacy_max_numbers_function->python_exercises_legacy_for_primeness python_exercises_legacy_cmdline_digit->python_basics_python_0150_datatypes_overview_compound python_exercises_legacy_cmdline_digit->python_basics_python_0139_commandline_argv python_exercises_legacy_cmdline_digit->python_basics_python_0120_helloworld python_exercises_legacy_cmdline_digit->python_exercises_legacy_dict_keyerror python_exercises_legacy_join_function->python_basics_python_0150_datatypes_overview_compound python_exercises_legacy_join_function->python_basics_python_0150_datatypes_overview python_exercises_legacy_join_function->python_basics_python_0270_functions python_exercises_legacy_uniq_function Exercise: Function: uniq() python_exercises_legacy_join_function->python_exercises_legacy_uniq_function python_exercises_legacy_max_numbers->python_basics_python_0170_if python_exercises_legacy_max_numbers->python_basics_python_0139_commandline_argv python_exercises_legacy_max_numbers->python_basics_python_0140_variables python_exercises_legacy_max_numbers->python_exercises_legacy_mixed_list_executable python_exercises_legacy_uniq_function->python_basics_python_0150_datatypes_overview_compound python_exercises_legacy_uniq_function->python_basics_python_0270_functions python_exercises_legacy_uniq_function->python_exercises_legacy_uniq_plain python_exercises_legacy_uniq_function->python_exercises_legacy_function_primeness python_exercises_legacy_wc->python_basics_python_0139_commandline_argv python_exercises_legacy_wc->python_basics_python_0500_files python_exercises_legacy_wc->python_exercises_legacy_python_0350_exercises python_exercises_legacy_for_primeness->python_basics_python_0220_for python_exercises_legacy_for_primeness->python_basics_python_0225_range python_exercises_legacy_for_primeness->python_exercises_legacy_while_primeness