Tôi có một chuỗi trong Python và muốn xóa các dòng trùng lặp [tức là khi văn bản giữa \ n giống nhau, sau đó xóa lần xuất hiện thứ hai [thứ ba, thứ tư], nhưng bảo tồn thứ tự của chuỗi. Ví dụ:
line1 \n line2 \n line3 \n line2 \n line2 \n line 4
sẽ trở lại:
line1 \n line2 \n line3 \n line 4
Các ví dụ khác mà tôi đã thấy trên StackOverflow đối phó ở giai đoạn đọc tệp văn bản thành Python [ví dụ: sử dụng Readline [], xem có trong một tập hợp đọc trong các dòng, sau đó chỉ thêm vào chuỗi nếu nó là duy nhất]. Trong trường hợp của tôi, điều này không hoạt động, vì chuỗi mà tôi đã bị thao túng nặng nề kể từ khi tải vào Python ... và nó có vẻ rất thất vọng, ví dụ: Viết toàn bộ chuỗi vào tệp TXT, sau đó đọc theo từng dòng để tìm kiếm các dòng trùng lặp
Chúng tôi được cung cấp một chuỗi và chúng tôi cần loại bỏ tất cả các bản sao khỏi nó? Điều gì sẽ là đầu ra nếu thứ tự của nhân vật quan trọng? Ví dụ:Examples:
Đầu vào: GeekSforGeeks & nbsp; đầu ra: efgkors geeksforgeeks
Output : efgkors
Vấn đề này có giải pháp hiện tại Vui lòng tham khảo Xóa tất cả các bản sao khỏi một chuỗi đã cho. & NBSP;
Phương pháp 1: & NBSP;
Python3
from
collections
import
OrderedDict
line1 \n line2 \n line3 \n line 4
0 line1 \n line2 \n line3 \n line 4
1line1 \n line2 \n line3 \n line 4
2line1 \n line2 \n line3 \n line 4
4line1 \n line2 \n line3 \n line 4
5 line1 \n line2 \n line3 \n line 4
6line1 \n line2 \n line3 \n line 4
7line1 \n line2 \n line3 \n line 4
8__12line1 \n line2 \n line3 \n line 4
0 Without Order = foskerg With Order = geksfor2
line1 \n line2 \n line3 \n line 4
2line1 \n line2 \n line3 \n line 4
4line1 \n line2 \n line3 \n line 4
5 Without Order = foskerg With Order = geksfor7__12
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor0
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor1
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor2
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor2
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor4
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor5
line1 \n line2 \n line3 \n line 4
4line1 \n line2 \n line3 \n line 4
2 Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor2
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor9
line1 \n line2 \n line3 \n line 4
4{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} OrderedDict[[['a', 1], ['b', 2], ['c', 3], ['d', 4], ['e', 5]]]1
line1 \n line2 \n line3 \n line 4
8{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} OrderedDict[[['a', 1], ['b', 2], ['c', 3], ['d', 4], ['e', 5]]]3
{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} OrderedDict[[['a', 1], ['b', 2], ['c', 3], ['d', 4], ['e', 5]]]4
line1 \n line2 \n line3 \n line 4
2Without Order = foskerg With Order = geksfor0
line1 \n line2 \n line3 \n line 4
4{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} OrderedDict[[['a', 1], ['b', 2], ['c', 3], ['d', 4], ['e', 5]]]1
line1 \n line2 \n line3 \n line 4
8OrderedDict[[['name', None], ['age', None], ['gender', None]]] OrderedDict[[['name', 10], ['age', 10], ['gender', 10]]]0
OrderedDict[[['name', None], ['age', None], ['gender', None]]] OrderedDict[[['name', 10], ['age', 10], ['gender', 10]]]1__12
Đầu ra
Without Order = foskerg With Order = geksfor
Độ phức tạp về thời gian: O [N] Không gian phụ trợ: O [N]
Auxiliary Space: O[n]
Phương pháp 2: & NBSP;
Python3
line1 \n line2 \n line3 \n line 4
0 OrderedDict[[['name', None], ['age', None], ['gender', None]]] OrderedDict[[['name', 10], ['age', 10], ['gender', 10]]]5
line1 \n line2 \n line3 \n line 4
2line1 \n line2 \n line3 \n line 4
4OrderedDict[[['name', None], ['age', None], ['gender', None]]] OrderedDict[[['name', 10], ['age', 10], ['gender', 10]]]9
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor2
line1 \n line2 \n line3 \n line 4
7line1 \n line2 \n line3 \n line 4
8line1 \n line2 \n line3 \n line 4
2from
4line1 \n line2 \n line3 \n line 4
4OrderedDict[[['name', None], ['age', None], ['gender', None]]] OrderedDict[[['name', 10], ['age', 10], ['gender', 10]]]9
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor2
from
8line1 \n line2 \n line3 \n line 4
4{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} OrderedDict[[['a', 1], ['b', 2], ['c', 3], ['d', 4], ['e', 5]]]1
line1 \n line2 \n line3 \n line 4
8collections
2collections
3line1 \n line2 \n line3 \n line 4
4collections
5Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor22
line1 \n line2 \n line3 \n line 4
4collections
9 import
0import
1 line1 \n line2 \n line3 \n line 4
2Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor5
import
4
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor0
import
6import
1 import
8import
9OrderedDict
0
import
4OrderedDict
2
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor5
import
9collections
5
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor2
collections
5OrderedDict
8OrderedDict
9import
4
{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} OrderedDict[[['a', 1], ['b', 2], ['c', 3], ['d', 4], ['e', 5]]]1
line1 \n line2 \n line3 \n line 4
8line1 \n line2 \n line3 \n line 4
03line1 \n line2 \n line3 \n line 4
04line1 \n line2 \n line3 \n line 4
2Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor2
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor9
OrderedDict[[['name', None], ['age', None], ['gender', None]]] OrderedDict[[['name', 10], ['age', 10], ['gender', 10]]]5
line1 \n line2 \n line3 \n line 4
2from
4Đầu ra
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor
Độ phức tạp về thời gian: O [N] Không gian phụ trợ: O [N] O[n]
Auxiliary Space: O[n]
Đặt hàng và FromKeys [] đặt hàng làm gì?
Một đơn đặt hàng là một từ điển nhớ rằng thứ tự của các khóa được chèn đầu tiên. Nếu một mục mới ghi đè lên một mục nhập hiện có, vị trí chèn ban đầu không thay đổi.
Ví dụ: xem đoạn mã bên dưới: & nbsp;
Python3
from
collections
import
OrderedDict
line1 \n line2 \n line3 \n line 4
0 line1 \n line2 \n line3 \n line 4
1line1 \n line2 \n line3 \n line 4
2line1 \n line2 \n line3 \n line 4
4line1 \n line2 \n line3 \n line 4
5 line1 \n line2 \n line3 \n line 4
6line1 \n line2 \n line3 \n line 4
7line1 \n line2 \n line3 \n line 4
8__12line1 \n line2 \n line3 \n line 4
0 Without Order = foskerg With Order = geksfor2
line1 \n line2 \n line3 \n line 4
2line1 \n line2 \n line3 \n line 4
4line1 \n line2 \n line3 \n line 4
5 Without Order = foskerg With Order = geksfor7__12
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor0
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor1
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor2
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor2
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor4
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor5
line1 \n line2 \n line3 \n line 4
4line1 \n line2 \n line3 \n line 4
2 Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor2
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor9
line1 \n line2 \n line3 \n line 4
4{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} OrderedDict[[['a', 1], ['b', 2], ['c', 3], ['d', 4], ['e', 5]]]1
line1 \n line2 \n line3 \n line 4
8{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} OrderedDict[[['a', 1], ['b', 2], ['c', 3], ['d', 4], ['e', 5]]]3
{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} OrderedDict[[['a', 1], ['b', 2], ['c', 3], ['d', 4], ['e', 5]]]4
line1 \n line2 \n line3 \n line 4
2Without Order = foskerg With Order = geksfor0
line1 \n line2 \n line3 \n line 4
4{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} OrderedDict[[['a', 1], ['b', 2], ['c', 3], ['d', 4], ['e', 5]]]1
line1 \n line2 \n line3 \n line 4
8OrderedDict[[['name', None], ['age', None], ['gender', None]]] OrderedDict[[['name', 10], ['age', 10], ['gender', 10]]]0
OrderedDict[[['name', None], ['age', None], ['gender', None]]] OrderedDict[[['name', 10], ['age', 10], ['gender', 10]]]1__12
Độ phức tạp về thời gian: O [N] Không gian phụ trợ: O [N]
Phương pháp 2: & NBSP;
line1 \n line2 \n line3 \n line 4
0 OrderedDict[[['name', None], ['age', None], ['gender', None]]] OrderedDict[[['name', 10], ['age', 10], ['gender', 10]]]5
line1 \n line2 \n line3 \n line 4
2line1 \n line2 \n line3 \n line 4
4collections
5Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor22
line1 \n line2 \n line3 \n line 4
4collections
9 import
0import
1 line1 \n line2 \n line3 \n line 4
2Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor5
import
4
Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor0
import
6import
1 import
8Đầu ra
{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} OrderedDict[[['a', 1], ['b', 2], ['c', 3], ['d', 4], ['e', 5]]]
Độ phức tạp về thời gian: O [N] Không gian phụ trợ: O [1]
Auxiliary Space: O[1]
Độ phức tạp về thời gian: O [N] Không gian phụ trợ: O [N] creates a new dictionary with keys from seq and values set to value and returns list of keys, fromkeys[seq[, value]] is the syntax for fromkeys[] method. Parameters :
- SEQ: Đây là danh sách các giá trị sẽ được sử dụng để chuẩn bị khóa từ điển. This is the list of values which would be used for dictionary keys preparation.
- Giá trị: Đây là tùy chọn, nếu được cung cấp thì giá trị sẽ được đặt thành giá trị này. This is optional, if provided then value would be set to this value.
Ví dụ: xem đoạn mã bên dưới: & nbsp;
Python3
from
collections
import
OrderedDict
line1 \n line2 \n line3 \n line 4
79Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor2
line1 \n line2 \n line3 \n line 4
8line1 \n line2 \n line3 \n line 4
82line1 \n line2 \n line3 \n line 4
83line1 \n line2 \n line3 \n line 4
84line1 \n line2 \n line3 \n line 4
83line1 \n line2 \n line3 \n line 4
86from
4line1 \n line2 \n line3 \n line 4
88 Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor2
line1 \n line2 \n line3 \n line 4
90{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} OrderedDict[[['a', 1], ['b', 2], ['c', 3], ['d', 4], ['e', 5]]]1
line1 \n line2 \n line3 \n line 4
8line1 \n line2 \n line3 \n line 4
2line1 \n line2 \n line3 \n line 4
8line1 \n line2 \n line3 \n line 4
88Without Order = foskerg With Order = geksfor0
line1 \n line2 \n line3 \n line 4
88 Without Order: kogerfs With Order: g With Order: ge With Order: ge With Order: gek With Order: geks With Order: geksf With Order: geksfo With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor With Order: geksfor2
line1 \n line2 \n line3 \n line 4
99Without Order = foskerg With Order = geksfor00
from
4{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5} OrderedDict[[['a', 1], ['b', 2], ['c', 3], ['d', 4], ['e', 5]]]1
line1 \n line2 \n line3 \n line 4
8line1 \n line2 \n line3 \n line 4
2line1 \n line2 \n line3 \n line 4
8line1 \n line2 \n line3 \n line 4
88Without Order = foskerg With Order = geksfor07
Đầu ra
OrderedDict[[['name', None], ['age', None], ['gender', None]]] OrderedDict[[['name', 10], ['age', 10], ['gender', 10]]]
Độ phức tạp về thời gian: O [N] Không gian phụ trợ: O [1]
Auxiliary Space: O[1]
Bài viết này được đóng góp bởi Shashank Mishra [Gullu]. Nếu bạn thích GeekSforGeeks và muốn đóng góp, bạn cũng có thể viết một bài viết bằng Write.GeekSforGeek.org hoặc gửi bài viết của bạn. Xem bài viết của bạn xuất hiện trên trang chính của GeekSforGeek và giúp các chuyên viên máy tính khác. & NBSP;Shashank Mishra [Gullu]. If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to . See your article appearing on the GeeksforGeeks main page and help other Geeks.