File handling is an essential aspect of programming, enabling you to read from and write to files. Python provides built-in functions and modules to work with various file types, including text, JSON, and XML files. This section covers how to perform file operations for these formats.
9.1 Reading and Writing Text Files
Text files are the simplest type of files and can be handled using Python’s built-in open() function. You can use this function to read from or write to text files.
9.1.1 Reading Text Files
# Reading from a text file
with open('example.txt', 'r') as file:
content = file.read()
print(content)
In this example, the open() function is used to open a file named example.txt in read mode ('r'). The read() method reads the entire content of the file into a string, which is then printed.
9.1.2 Writing to Text Files
# Writing to a text file
with open('example.txt', 'w') as file:
file.write("Hello, World!\n")
file.write("This is a text file.")
In this example, the file example.txt is opened in write mode ('w'). The write() method writes text to the file. If the file does not exist, it will be created. If it does exist, its content will be overwritten.
9.2 Reading and Writing JSON Files
JSON (JavaScript Object Notation) is a lightweight data interchange format. Python’s json module provides methods for reading from and writing to JSON files.
9.2.1 Reading JSON Files
import json
# Reading from a JSON file
with open('data.json', 'r') as file:
data = json.load(file)
print(data)
Here, json.load() reads the JSON content from data.json and converts it into a Python dictionary or list, depending on the structure of the JSON data.
9.2.2 Writing to JSON Files
import json
# Writing to a JSON file
data = {
"name": "John Doe",
"age": 30,
"city": "New York"
}
with open('data.json', 'w') as file:
json.dump(data, file, indent=4)
In this example, json.dump() writes the data dictionary to data.json. The indent=4 parameter formats the JSON data with an indentation of 4 spaces for better readability.
9.3 Reading and Writing XML Files
XML (eXtensible Markup Language) is used to store and transport data. Python provides several libraries for working with XML files, such as xml.etree.ElementTree.
9.3.1 Reading XML Files
import xml.etree.ElementTree as ET
# Reading from an XML file
tree = ET.parse('data.xml')
root = tree.getroot()
for child in root:
print(child.tag, child.attrib)
In this example, ET.parse() loads the XML file data.xml, and getroot() retrieves the root element of the XML tree. The code then iterates through the child elements of the root and prints their tags and attributes.
9.3.2 Writing to XML Files
import xml.etree.ElementTree as ET
# Creating XML data
data = ET.Element("data")
item = ET.SubElement(data, "item")
item.set("name", "Item1")
item.text = "This is item 1"
# Writing to an XML file
tree = ET.ElementTree(data)
tree.write('data.xml')
This example creates an XML structure with a root element data and a child element item. The ET.ElementTree() class is used to write the XML data to data.xml.
Comments
Post a Comment