8000 Fixes Formatting Exception by EternalLearner42 · Pull Request #25088 · pandas-dev/pandas · GitHub
[go: up one dir, main page]

Skip to content

Fixes Formatting Exception #25088

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 12 commits into from
Feb 16, 2019
Prev Previous commit
Next Next commit
Fixed try/except block
  • Loading branch information
EternalLearner42 authored Feb 2, 2019
commit 8acc296640467571ba05309df91f1cac7be1fc60
13 changes: 7 additions & 6 deletions pandas/io/formats/terminal.py
8000
Original file line number Diff line number Diff line change
Expand Up @@ -104,14 +104,15 @@ def _get_terminal_size_tput():
stdin=subprocess.PIPE,
stdout=subprocess.PIPE)
output_rows = proc.communicate(input=None)
try:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This try/ except should go below the catching of the OSError.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very well, I'll just declare the output variables outside of the try/catch block, I suppose

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@TomAugspurger I've updated it. Is this what you meant?

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think you need the prior initializations unless you're going to refer, after a try/except block, to a variable that doesn't get created due to an exception. That can't happen here because of the returns, but OTOH the initializations don't hurt anything, and might make the code less likely to break due to a careless change in the future.

I'm any case, thanks for the fix!

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No problem! Feel free to let me know of any ways I can help further!

cols = int(output_cols[0])
rows = int(output_rows[0])
return (cols, rows)
except ValueError:
return None
except OSError:
return None
try:
cols = int(output_cols[0])
rows = int(output_rows[0])
return (cols, rows)
except ValueError:
return None



def _get_terminal_size_linux():
Expand Down
0