<｜begin▁of▁sentence｜>### Instruction:
Given a directed graph with edges [(0, 1), (0, 2), (2, 3), (3, 0), (4, 5), (5, 4)], can you use Graph.components in igraph to calculate both the strongly and weakly connected components? Notes: You need to print out the results for both strong and weak components.
### Response:
import igraph as ig

# Create a directed graph with some edges
g = ig.Graph([(0, 1), (0, 2), (2, 3), (3, 0), (4, 5), (5, 4)], directed=True)

# Calculate the strongly connected components
components_strong = g.components(mode='strong')

# Calculate the weakly connected components
components_weak = g.components(mode='weak')

# Print the results
print('Strongly connected components:', components_strong)
print('Weakly connected components:', components_weak)
<|EOT|>
