Các hành động trong Set:
Toán Tử |
Ký Hiệu |
Mô Tả |
Union |
| |
Kết hợp/ lấy tất cả các Set |
Intersection |
& |
Chỉ lấy phần giao nhau |
Symmetric Difference |
^ |
KHÔNG lấy phần giao nhau |
Difference |
- |
Chỉ lấy phần TỒN TẠI set_1 mà không tồn tại ở set_2 |
'''
Có 3 list được định nghĩa với các IP như dưới
Yêu cầu: Dùng các hành động của Set để tìm các IP trùng nhau giữa:
1. Hà Nội và Đà Nẵng
2. Hà Nội và Hồ Chí Minh
3. Tất cả các site
4. Lấy IP của Hồ Chí Minh mà không trung với bất kỳ site nào
'''
HaNoi_ips = [
"10.10.10.1",
"10.10.20.1",
"10.10.30.1",
"10.10.40.1",
"10.10.50.1",
"10.10.60.1",
"10.10.70.1",
"10.10.80.1",
"10.10.10.1",
"10.10.20.1",
"10.10.70.1",
]
DaNang_ips = [
"10.10.10.1",
"10.10.20.1",
"10.10.30.1",
"10.10.140.1",
"10.10.150.1",
"10.10.160.1",
"10.10.170.1",
"10.10.180.1",
]
HoChiMinh_ips = [
"10.10.10.1",
"10.10.20.1",
"10.10.140.1",
"10.10.150.1",
"10.10.210.1",
"10.10.220.1",
"10.10.230.1",
"10.10.240.1",
]
HaNoi_ips = set(HaNoi_ips)
DaNang_ips = set(DaNang_ips)
HoChiMinh_ips = set(HoChiMinh_ips)
# 1. Hà Nội và Đà Nẵng (Dùng set intersection)
print()
print("-" * 80)
print(
"Duplicate IPs Ha Noi va Da Nang:\n\n{}".format(
HaNoi_ips & DaNang_ips
)
)
print("-" * 80)
# 2. Hà Nội và Hồ Chí Minh (Dùng set intersection)
print()
print("-" * 80)
print(
"Duplicate IPs Ha Noi va Ho Chi Minh:\n\n{}".format(
HaNoi_ips & HoChiMinh_ips
)
)
print("-" * 80)
# 3. Tất cả các site
print()
print("-" * 80)
print(
"Duplicate IPs tat ca cac sites:\n\n{}".format(
HaNoi_ips & DaNang_ips & HoChiMinh_ips
)
)
print("-" * 80)
# 4. Lấy IP của Hồ Chí Minh mà không trung với bất kỳ site nào
print()
print("-" * 80)
print(
"Ho Chi Minh IP addresses difference:\n\n{}".format(
HoChiMinh_ips.difference(HaNoi_ips).difference(DaNang_ips)
)
)
# HOẶC
print()
print("-" * 80)
print(
"Ho Chi Minh IP addresses '-':\n\n{}".format(
HoChiMinh_ips - DaNang_ips - HaNoi_ips
)
)
print("-" * 80)
print()
C:\python>python Demo.py--------------------------------------------------------------------------------Duplicate IPs Ha Noi va Da Nang:{'10.10.20.1', '10.10.10.1', '10.10.30.1'}----------------------------------------------------------------------------------------------------------------------------------------------------------------Duplicate IPs Ha Noi va Ho Chi Minh:{'10.10.20.1', '10.10.10.1'}----------------------------------------------------------------------------------------------------------------------------------------------------------------Duplicate IPs tat ca cac sites:{'10.10.20.1', '10.10.10.1'}----------------------------------------------------------------------------------------------------------------------------------------------------------------Ho Chi Minh IP addresses difference:{'10.10.230.1', '10.10.210.1', '10.10.240.1', '10.10.220.1'}--------------------------------------------------------------------------------Ho Chi Minh IP addresses '-':{'10.10.230.1', '10.10.210.1', '10.10.240.1', '10.10.220.1'}--------------------------------------------------------------------------------C:\python>
No comments:
Post a Comment