def main() -> None:
"""Process and display command-line arguments."""
print("=== Command Quest ===")
- print(f"Program name: {sys.argv[0]}")
-
if len(sys.argv) == 1:
print("No arguments provided!")
+ print(f"Program name: {sys.argv[0]}")
else:
+ print(f"Program name: {sys.argv[0]}")
print(f"Arguments received: {len(sys.argv) - 1}")
- for i, arg in enumerate(sys.argv[1:], 1):
- print(f"Argument {i}: {arg}")
+ if len(sys.argv) > 1:
+ for i, arg in enumerate(sys.argv[1:], 1):
+ print(f"Argument {i}: {arg}")
print(f"Total arguments: {len(sys.argv)}")
def main() -> None:
"""Demonstrate 3D coordinate system using tuples."""
print("=== Game Coordinate System ===")
- print()
-
- # Create and demonstrate a position
position1: tuple[int, int, int] = (10, 20, 5)
origin: tuple[int, int, int] = (0, 0, 0)
-
print(f"Position created: {position1}")
dist: float = distance_3d(origin, position1)
print(f"Distance between {origin} and {position1}: {dist}")
- print()
-
- # Parse coordinates from string
- print('Parsing coordinates: "3,4,0"')
+ print('\nParsing coordinates: "3,4,0"')
+ position2: tuple[float, float, float] = (0.0, 0.0, 0.0)
try:
- position2: tuple[float, float, float] = parse_coordinates("3,4,0")
+ position2 = parse_coordinates("3,4,0")
print(f"Parsed position: {position2}")
dist = distance_3d(origin, position2)
print(f"Distance between {origin} and {position2}: {dist}")
except ValueError as e:
print(f"Error parsing coordinates: {e}")
-
- # Handle invalid coordinates
- print('Parsing invalid coordinates: "abc,def,ghi"')
+ print('\nParsing invalid coordinates: "abc,def,ghi"')
try:
parse_coordinates("abc,def,ghi")
except ValueError as e:
print(f"Error parsing coordinates: {e}")
- print(
- 'Error details - Type: ValueError, Args: ("invalid literal for '
- "int() with base 10: 'abc'\",)"
- )
- print()
-
- # Demonstrate tuple unpacking
- print("Unpacking demonstration:")
+ print(f"Error details - Type: ValueError, Args: {e.args}")
+ print("\nUnpacking demonstration:")
x: float
y: float
z: float
x, y, z = position2
- print(f"Player at x={x}, y={y}, z={z}")
- print(f"Coordinates: X={x}, Y={y}, Z={z}")
+ print(f"Player at x={int(x)}, y={int(y)}, z={int(z)}")
+ print(f"Coordinates: X={int(x)}, Y={int(y)}, Z={int(z)}")
if __name__ == "__main__":
print(f"Rare achievements (1 player): {rare_achievements}")
# Pairwise comparisons
+ # Note: Subject example shows pairwise difference (relative uniqueness),
+ # not globally unique achievements across all players.
alice_bob_common: set[str] = alice & bob
- alice_unique: set[str] = alice - bob - charlie
- bob_unique: set[str] = bob - alice - charlie
+ alice_unique: set[str] = alice - bob
+ bob_unique: set[str] = bob - alice
print(f"Alice vs Bob common: {alice_bob_common}")
print(f"Alice unique: {alice_unique}")