Mam listę:
ip_info = ['10.0.0.2/10.10.10.1', '10.0.111.1/10.10.121.4', '10.0.145.15/10.99.10.1', '10.99.0.1/10.44.155.4', '10.0.10.1/10.10.110.1']
Chcę mieć w stanie usunąć wszystkie znaki po znaku /
dla każdego elementu na liście.
Na wyjście:
ip_info = ['10.0.0.2/', '10.0.111.1/', '10.0.145.15/', '10.99.0.1/', '10.0.110.1/']
Stamtąd będę mógł usunąć problem /
, ponieważ są one statyczne i można je łatwo usunąć.
Próbowałem:
for x in ip_info:
''.join(ip_info.partition('/')[0:2])
Nie sądzę, że to jest poprawne. Ponieważ musi się wydarzyć dla każdego elementu na liście. Wsparcie?
2 odpowiedzi
Korzystanie ze składanych list:
ip_info = [ip.split('/')[0] for ip in ip_info]
>>> ip_info = ['10.0.0.2/10.10.10.1', '10.0.111.1/10.10.121.4', '10.0.145.15/10.99.10.1',
'10.99.0.1/10.44.155.4', '10.0.10.1/10.10.110.1']
>>> ip_info = [ip.split('/')[0] for ip in ip_info]
>>> print ip_info
['10.0.0.2', '10.0.111.1', '10.0.145.15', '10.99.0.1', '10.0.10.1']
>>> ip_info = ['10.0.0.2/10.10.10.1', '10.0.111.1/10.10.121.4', '10.0.145.15/10.99.10.1', '10.99.0.1/10.44.155.4', '10.0.10.1/10.10.110.1']
>>> [i.split('/')[0] for i in ip_info]
['10.0.0.2', '10.0.111.1', '10.0.145.15', '10.99.0.1', '10.0.10.1']
Podobne pytania
Nowe pytania
python
Python to wielozadaniowy, wielozadaniowy język programowania dynamicznie typowany. Został zaprojektowany tak, aby był szybki do nauczenia się, zrozumienia i użycia oraz wymuszania czystej i jednolitej składni. Należy pamiętać, że Python 2 oficjalnie nie jest obsługiwany od 01-01-2020. Mimo to, w przypadku pytań Pythona specyficznych dla wersji, dodaj znacznik [python-2.7] lub [python-3.x]. Korzystając z wariantu Pythona (np. Jython, PyPy) lub biblioteki (np. Pandas i NumPy), należy umieścić go w tagach.