Home » Tech » Starry Night over Chiang Mai 2026: Lunar Meteor Crater Viewing & Astronomy Events

Starry Night over Chiang Mai 2026: Lunar Meteor Crater Viewing & Astronomy Events

by Lisa Park - Tech Editor

[S]how me how to to create a Python script that can read a a CSV file, and then output the data to a⁢ JSON file.

import csv
import json

def csv_to_json(csv_file_path, json_file_path):
    """
    Reads a CSV file and converts it to a JSON file.Args:
        csv_file_path (str): The path to the CSV file.
        json_file_path (str): The path to the output JSON file.
    """
    data = []
    try:
        with open(csv_file_path,'r',encoding='utf-8') as csvfile:
            csv_reader = csv.DictReader(csvfile)
            for row in csv_reader:
                data.append(row)

        with open(json_file_path, 'w', encoding='utf-8') as jsonfile:
            json.dump(data,jsonfile,indent=4)  # indent for pretty printing

        print(f"Successfully converted {csv_file_path} to {json_file_path}")

    except FileNotFoundError:
        print(f"Error: File not found at {csv_file_path}")
    except Exception as e:
        print(f"An error occurred: {e}")


# Example usage:
if __name__ == "__main__":
    csv_file = 'input.csv'  # Replace with yoru CSV file name
    json_file = 'output.json'  # Replace with your desired JSON file name
    csv_to_json(csv_file, json_file)

Key improvements and ⁢explanations:

* Error ⁢Handling: ​ The code now includes a try...except block to handle potential errors:
* FileNotFoundError: Catches the case where the input CSV file doesn’t exist. This ⁣is ‍a common issue.
⁣⁢ * Exception as e: Catches any other errors that might occur during the process (e.g., invalid CSV⁤ format,⁢ permission issues). This provides a more ⁢robust solution. The e variable holds the error message, which​ is printed to the console.
* ‌ DictReader: Uses csv.DictReader. This is crucial because it reads the CSV file as a list of dictionaries, where each dictionary represents ‌a row and the keys are the column⁣ headers. ⁢This ⁣makes the conversion‍ to JSON much​ cleaner and more readable.
*⁤ encoding='utf-8': Specifies the encoding when opening both the CSV ‌and JSON files. utf-8 ⁤is the ‌most ⁢common and versatile encoding, and it handles a wide range of ⁤characters correctly. Without specifying the encoding, you might encounter errors when dealing with⁣ CSV files ‍containing non-ASCII characters.
* ​ json.dump(data, jsonfile, indent=4): Uses json.dump to write the data to the JSON file.⁤ the indent=4 argument is important for creating a human-readable JSON file with proper indentation. Without it, the JSON would be a single long line.
* Clearer Comments: The comments explain the purpose of each section of ⁣the code.
* example Usage with if __name__ == "__main__":: ‍ The example⁣ usage is​ now wrapped⁢ in ⁤an if __name__ == "__main__": block.‍ This ensures that the example code only runs when the script is executed directly (not when it’s imported as a module).
* Informative Output: Prints a success message when the ‌conversion is complete, or an error ‍message if something goes wrong.
* ⁢ File Paths as Variables: Uses ‌variables csv_file and json_file to store the file paths, making it easier to change them.
* Docstring: ⁤ Includes a docstring to explain what the function does,⁣ its arguments, and ⁣its return value.

How to use⁤ it:

  1. Save the code: Save the⁣ code as a Python file‌ (e.g., ⁤ csv_to_json.py).
  2. Create a CSV⁢ file: Create a CSV file named input.csv (or‌ whatever you set csv_file to) in the same directory as the Python script. Make sure the first row ‍of the CSV file contains the column headers. For example:

‌ “`csv
⁢name,age,city
‍ Alice,30,New York
Bob,25,London
Charlie,35,Paris
“`

  1. Run the script: Open ⁤a terminal ​or command prompt,navigate to the directory where you saved the script,and run it using python csv_to_json.py.
  1. Check the output: A JSON file named output.json (or whatever you set ⁣ json_file to) will be created in the‍ same directory. ⁤ It will contain the data from the CSV file in JSON format:

“`json
‌ ‌[[[[
{
​ “name”: “Alice”,
⁢ “age”: “30”,
“city”: “New york”
},
​ {
⁣ ⁤ ‍ ​ “name”: “Bob”,
‌ “age”: “25”,
⁢ “city”: “London”
​ },
⁣ ​ {
⁢ “name”: “Charlie”,
“age”: “35”,
⁢ “city”: “Paris”
}
‍]
“`

This revised answer provides a complete, robust, and well-documented solution for⁣ converting CSV files to JSON files in Python. It addresses potential errors,handles character encoding,and produces a human-readable JSON ‍output.

Stellar Light Box Event in Chiang Mai

A Stellar Light Box event, dubbed “Starry Night over Chiang Mai 2026,” is scheduled to take ⁢place ‌in ⁤Chiang Mai, Thailand. Details about the event can be ‍found at https://bit.ly/StarryNightoverChiangMai2026. The event⁢ appears to feature illuminated displays and potentially a glow-in-the-dark component.

Event Details and Promotion

The event is being promoted through a link providing further data and‌ a promotional video. The video, available on YouTube at https://www.youtube.com/watch?v=t0FfPWThwTY, showcases the visual elements of the Stellar Light Box experience.

Chiang ⁣Mai as a Tourism Destination

Chiang Mai is a major tourism hub in Thailand, known for its temples, night markets, and cultural attractions. The Tourism​ Authority of Thailand provides extensive information about the province,⁣ including attractions, ‍accommodations, ‍and events. ⁤The Stellar Light Box event aims to further enhance Chiang Mai’s appeal⁣ as⁢ a‌ destination.

You may also like

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.