Skip to main content
added 2 characters in body
Source Link
toolic
  • 15.9k
  • 6
  • 29
  • 217

In addition to the previous answer, here aare some other suggestions.

User Interface

The GUI looks great.

However, there is a minor portability issue with some of the Unicode characters in the source code.

In this line:

ttk.Button(top, text="Load CSV…", command=self.load_csv).grid(row=0, column=3, padx=6)

the ellipsis shows up as a left paren for me in the button at the top of the GUI: "Load CSV)". I think the ellipsis can simply be removed:

ttk.Button(top, text="Load CSV", command=self.load_csv).grid(row=0, column=3, padx=6)

Similarly, I see this in the bottom left in the GUI:

Loaded 7)day forecast

The dash character is also converted to a right paren.


In the temperature graph, it is more common to refer to temperatures as "High" and "Low", instead of "Tmax" and "Tmin", respectively.


If I type a number into the "City" field, such as "777", it does find a city and presents data in the graphs. This is unexpected. If you support that, please add some information into the GUI to explain what an entered number is meant to represent. Otherwise, you could check for numbers only and report an error.


If I enter a city which can not be found, I get a pop-up error window, as expected. However, the message ("City not found") is so short that I don't see the full title of the message box because the pop-up window is not wide enough. You could try to set the width of that window. Also, you could change:

raise ValueError("City not found")

to:

raise ValueError(f"City not found: {q}")

This gives the user a more specific error message.

In addition to the previous answer, here a some other suggestions.

User Interface

The GUI looks great.

However, there is a minor portability issue with some of the Unicode characters in the source code.

In this line:

ttk.Button(top, text="Load CSV…", command=self.load_csv).grid(row=0, column=3, padx=6)

the ellipsis shows up as a left paren for me in the button at the top of the GUI: "Load CSV)". I think the ellipsis can simply be removed:

ttk.Button(top, text="Load CSV", command=self.load_csv).grid(row=0, column=3, padx=6)

Similarly, I see this in the bottom left in the GUI:

Loaded 7)day forecast

The dash character is also converted to a right paren.


In the temperature graph, it is more common to refer to temperatures as "High" and "Low", instead of "Tmax" and "Tmin", respectively.


If I type a number into the "City" field, such as "777", it does find a city and presents data in the graphs. This is unexpected. If you support that, please add some information into the GUI to explain what an entered number is meant to represent. Otherwise, you could check for numbers only and report an error.


If I enter a city which can not be found, I get a pop-up error window, as expected. However, the message ("City not found") is so short that I don't see the full title of the message box because the pop-up window is not wide enough. You could try to set the width of that window. Also, you could change:

raise ValueError("City not found")

to:

raise ValueError(f"City not found: {q}")

This gives the user a more specific error message.

In addition to the previous answer, here are some other suggestions.

User Interface

The GUI looks great.

However, there is a minor portability issue with some of the Unicode characters in the source code.

In this line:

ttk.Button(top, text="Load CSV…", command=self.load_csv).grid(row=0, column=3, padx=6)

the ellipsis shows up as a left paren for me in the button at the top of the GUI: "Load CSV)". I think the ellipsis can simply be removed:

ttk.Button(top, text="Load CSV", command=self.load_csv).grid(row=0, column=3, padx=6)

Similarly, I see this in the bottom left in the GUI:

Loaded 7)day forecast

The dash character is also converted to a right paren.


In the temperature graph, it is more common to refer to temperatures as "High" and "Low", instead of "Tmax" and "Tmin", respectively.


If I type a number into the "City" field, such as "777", it does find a city and presents data in the graphs. This is unexpected. If you support that, please add some information into the GUI to explain what an entered number is meant to represent. Otherwise, you could check for numbers only and report an error.


If I enter a city which can not be found, I get a pop-up error window, as expected. However, the message ("City not found") is so short that I don't see the full title of the message box because the pop-up window is not wide enough. You could try to set the width of that window. Also, you could change:

raise ValueError("City not found")

to:

raise ValueError(f"City not found: {q}")

This gives the user a more specific error message.

added 485 characters in body
Source Link
toolic
  • 15.9k
  • 6
  • 29
  • 217

In addition to the previous answer, here a some other suggestions.

User Interface

The GUI looks great.

However, there is a minor portability issue with some of the Unicode characters in the source code.

In this line:

ttk.Button(top, text="Load CSV…", command=self.load_csv).grid(row=0, column=3, padx=6)

the ellipsis shows up as a left paren for me in the button at the top of the GUI: "Load CSV)". I think the ellipsis can simply be removed:

ttk.Button(top, text="Load CSV", command=self.load_csv).grid(row=0, column=3, padx=6)

Similarly, I see this in the bottom left in the GUI:

Loaded 7)day forecast

The dash character is also converted to a right paren.

 

In the temperature graph, it is more common to refer to temperatures as "High" and "Low", instead of "Tmax" and "Tmin", respectively.

 

If I type a number into the "City" field, such as "777", it does find a city and presents data in the graphs. This is unexpected. If you support that, please add some information into the GUI to explain what an entered number is meant to represent. Otherwise, you could check for numbers only and report an error.


If I enter a city which can not be found, I get a pop-up error window, as expected. However, the message ("City not found") is so short that I don't see the full title of the message box because the pop-up window is not wide enough. You could try to set the width of that window. Also, you could change:

raise ValueError("City not found")

to:

raise ValueError(f"City not found: {q}")

This gives the user a more specific error message.

In addition to the previous answer, here a some other suggestions.

User Interface

The GUI looks great.

However, there is a minor portability issue with some of the Unicode characters in the source code.

In this line:

ttk.Button(top, text="Load CSV…", command=self.load_csv).grid(row=0, column=3, padx=6)

the ellipsis shows up as a left paren for me in the button at the top of the GUI: "Load CSV)". I think the ellipsis can simply be removed:

ttk.Button(top, text="Load CSV", command=self.load_csv).grid(row=0, column=3, padx=6)

Similarly, I see this in the bottom left in the GUI:

Loaded 7)day forecast

The dash character is also converted to a right paren.

In the temperature graph, it is more common to refer to temperatures as "High" and "Low", instead of "Tmax" and "Tmin", respectively.

If I type a number into the "City" field, such as "777", it does find a city and presents data in the graphs. This is unexpected. If you support that, please add some information into the GUI to explain what an entered number is meant to represent. Otherwise, you could check for numbers only and report an error.

In addition to the previous answer, here a some other suggestions.

User Interface

The GUI looks great.

However, there is a minor portability issue with some of the Unicode characters in the source code.

In this line:

ttk.Button(top, text="Load CSV…", command=self.load_csv).grid(row=0, column=3, padx=6)

the ellipsis shows up as a left paren for me in the button at the top of the GUI: "Load CSV)". I think the ellipsis can simply be removed:

ttk.Button(top, text="Load CSV", command=self.load_csv).grid(row=0, column=3, padx=6)

Similarly, I see this in the bottom left in the GUI:

Loaded 7)day forecast

The dash character is also converted to a right paren.

 

In the temperature graph, it is more common to refer to temperatures as "High" and "Low", instead of "Tmax" and "Tmin", respectively.

 

If I type a number into the "City" field, such as "777", it does find a city and presents data in the graphs. This is unexpected. If you support that, please add some information into the GUI to explain what an entered number is meant to represent. Otherwise, you could check for numbers only and report an error.


If I enter a city which can not be found, I get a pop-up error window, as expected. However, the message ("City not found") is so short that I don't see the full title of the message box because the pop-up window is not wide enough. You could try to set the width of that window. Also, you could change:

raise ValueError("City not found")

to:

raise ValueError(f"City not found: {q}")

This gives the user a more specific error message.

Source Link
toolic
  • 15.9k
  • 6
  • 29
  • 217

In addition to the previous answer, here a some other suggestions.

User Interface

The GUI looks great.

However, there is a minor portability issue with some of the Unicode characters in the source code.

In this line:

ttk.Button(top, text="Load CSV…", command=self.load_csv).grid(row=0, column=3, padx=6)

the ellipsis shows up as a left paren for me in the button at the top of the GUI: "Load CSV)". I think the ellipsis can simply be removed:

ttk.Button(top, text="Load CSV", command=self.load_csv).grid(row=0, column=3, padx=6)

Similarly, I see this in the bottom left in the GUI:

Loaded 7)day forecast

The dash character is also converted to a right paren.

In the temperature graph, it is more common to refer to temperatures as "High" and "Low", instead of "Tmax" and "Tmin", respectively.

If I type a number into the "City" field, such as "777", it does find a city and presents data in the graphs. This is unexpected. If you support that, please add some information into the GUI to explain what an entered number is meant to represent. Otherwise, you could check for numbers only and report an error.