Dưới đây là một chức năng loại bỏ tất cả các ký tự ASCII khó chịu, ngoại lệ duy nhất là "&" được thay thế bằng "và". Tôi sử dụng nó cho cảnh sát một hệ thống tập tin và đảm bảo rằng tất cả các tệp đều tuân thủ sơ đồ đặt tên tệp mà tôi khẳng định mọi người sử dụng. def cleanString(incomingString):
newstring = incomingString
newstring = newstring.replace("!","")
newstring = newstring.replace("@","")
newstring = newstring.replace("#","")
newstring = newstring.replace("$","")
newstring = newstring.replace("%","")
newstring = newstring.replace("^","")
newstring = newstring.replace("&","and")
newstring = newstring.replace("*","")
newstring = newstring.replace("(","")
newstring = newstring.replace(")","")
newstring = newstring.replace("+","")
newstring = newstring.replace("=","")
newstring = newstring.replace("?","")
newstring = newstring.replace("\'","")
newstring = newstring.replace("\"","")
newstring = newstring.replace("{","")
newstring = newstring.replace("}","")
newstring = newstring.replace("[","")
newstring = newstring.replace("]","")
newstring = newstring.replace("<","")
newstring = newstring.replace(">","")
newstring = newstring.replace("~","")
newstring = newstring.replace("`","")
newstring = newstring.replace(":","")
newstring = newstring.replace(";","")
newstring = newstring.replace("|","")
newstring = newstring.replace("\\","")
newstring = newstring.replace("/","")
return newstring
Giới thiệuTrong hướng dẫn này, chúng ta sẽ xem cách loại bỏ một ký tự khỏi một chuỗi trong Python. Chuỗi và đặc biệt là đầu vào do người dùng tạo có thể chứa các ký tự không mong muốn, chẳng hạn như các ký tự đặc biệt trong trường tên người dùng mà chúng tôi không muốn lưu trữ. Trong những trường hợp đó, chúng tôi có thể thích loại bỏ các ký tự cụ thể khỏi một chuỗi đã cho. Cách phổ biến nhất để loại bỏ ký tự khỏi chuỗi là bằng phương pháp original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
2, nhưng chúng ta cũng có thể sử dụng phương pháp original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
3 và thậm chí thay thế một hoặc nhiều lần xuất hiện của một ký tự nhất định.Xóa ký tự trong Python bằng cách sử dụng thay thế ()Lớp original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
4 cung cấp một phương thức original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
2, thay thế một ký tự bằng một ký tự khác. Điều đáng chú ý là chức năng của anh ta trả về một chuỗi mới với các ký tự được thay thế, vì các chuỗi là bất biến. Chuỗi ban đầu vẫn không thay đổi, nhưng đối tượng trong bộ nhớ bị mất trừ khi chúng ta giữ một tham chiếu đến nó còn sống. Thông thường, bạn sẽ gán giá trị được trả về cho cùng một con trỏ hoặc một giá trị mới.immutable. The original string remains unchanged, but the object in memory is lost
unless we keep a reference to it alive. Typically, you'll assign the returned value either to the same pointer or a new one.Phương pháp thay thế tất cả các lần xuất hiện của một ký tự, với một phương pháp mới. Ví dụ, original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
6 sẽ thay thế tất cả các lần xuất hiện của original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
7 trong original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
8 bằng ký tự original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
9. Để xóa một ký tự khỏi chuỗi qua original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
2, chúng tôi sẽ thay thế nó bằng một ký tự trống:original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
Khi chúng tôi chạy mã này, chúng tôi được chào đón: String after removing the character 'a': stck buse
Xóa ký tự trong python bằng dịch ()Các chuỗi Python có phương thức original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
3 thay thế các ký tự bằng các ký tự khác được chỉ định trong bảng dịch.Một bảng dịch chỉ là một từ điển của các ánh xạ giá trị khóa trong đó mỗi khóa sẽ được thay thế bằng một giá trị.translation table is just a dictionary of key-value mappings where each key will be replaced with a value.
Để phương pháp này hoạt động, chúng ta phải chỉ định giá trị Unicode cho các chuỗi mà chúng ta có thể nhận được thông qua hàm String after removing the character 'a': stck buse
2.Ví dụ, String after removing the character 'a': stck buse
3 sẽ thay thế các lần xuất hiện original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
7 bằng String after removing the character 'a': stck buse
5 và original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
9 bằng String after removing the character 'a': stck buse
7.Để xóa ký tự khỏi chuỗi bằng cách sử dụng original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
3, bạn sẽ cần ánh xạ giá trị Unicode của ký tự với String after removing the character 'a': stck buse
9 trong bảng dịch:original_string = "stack abuse"
# removing character 'a'
new_string = original_string.translate({ord('a'): None})
print("String after removing the character 'a':", new_string)
Mã này dẫn đến: String after removing the character 'a': stck buse
Xóa một số lần xuất hiện của một ký tựCác phương pháp original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
2 và original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
3 thay thế tất cả các sự xuất hiện của một ký tự nhất định bằng một phương pháp khác. Tuy nhiên, phương thức original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
2 có một đối số tùy chọn original_string = "stack abuse"
# removing character 'a'
new_string = original_string.translate({ord('a'): None})
print("String after removing the character 'a':", new_string)
3. Nếu nó được đưa ra, nó chỉ thay thế original_string = "stack abuse"
# removing character 'a'
new_string = original_string.translate({ord('a'): None})
print("String after removing the character 'a':", new_string)
3 số xuất hiện của ký tự đã cho.Chúng ta hãy thử chỉ xóa original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
7 đầu tiên khỏi chuỗi, thay vì tất cả các lần xuất hiện:original_string = "stack abuse"
# removing character 's'
new_string = original_string.replace('a', '', 1)
print("String after removing the character 'a':", new_string)
Đầu ra của mã trên sẽ trông như thế này: String after removing the character 'a': stck abuse
Vì số lượng được đặt thành original_string = "stack abuse"
# removing character 'a'
new_string = original_string.translate({ord('a'): None})
print("String after removing the character 'a':", new_string)
6, chỉ có lần xuất hiện đầu tiên của original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
7 được thay thế - điều này rất hữu ích khi bạn muốn xóa một và chỉ một ký tự.Tạo thủ công một chuỗi mới mà không có ký tựMột kỹ thuật bí truyền, nhưng đơn giản sẽ là tạo ra một chuỗi trống và vòng lặp qua chuỗi ban đầu. Trong vòng lặp, chúng tôi sẽ viết mọi ký tự vào chuỗi mới ngoại trừ bản để xóa. Đây thực sự là những gì xảy ra dưới mui xe, với một số xác nhận thêm. Vì Python được triển khai trong C, chúng ta có thể đạt đỉnh ở mã nguồn original_string = "stack abuse"
# removing character 'a'
new_string = original_string.translate({ord('a'): None})
print("String after removing the character 'a':", new_string)
8, xác định phương thức original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
2, cuối cùng gọi là String after removing the character 'a': stck buse
0 hoặc String after removing the character 'a': stck buse
1: start = self_s;
end = self_s + self_len;
while (count-- > 0) {
next = findchar(start, end-start, from_c);
if (next == NULL)
break;
if (next == start) {
/* replace with the 'to' */
Py_MEMCPY(result_s, to_s, to_len);
result_s += to_len;
start += 1;
} else {
/* copy the unchanged old then the 'to' */
Py_MEMCPY(result_s, start, next-start);
result_s += (next-start);
Py_MEMCPY(result_s, to_s, to_len);
result_s += to_len;
start = next+1;
}
}
/* Copy the remainder of the remaining string */
Py_MEMCPY(result_s, start, end-start);
return result;
Để đạt được sự đánh giá cao về số lượng logic được trừu tượng hóa đằng sau các API cấp cao, trực quan, trực quan, chúng ta có thể thực hiện quá trình này theo cách thủ công: def remove_character(original_string, character, occurrence_num):
new_string = ""
for char in original_string:
if char == character and occurrence_num > 0:
occurrence_num = occurrence_num-1
continue
else:
new_string += char
return new_string
string = 'stack abuse'
print(remove_character(string, 'a', 0))
print(remove_character(string, 'a', 1))
print(remove_character(string, 'a', 2))
Phần mã trên sẽ tạo ra đầu ra sau: Kiểm tra hướng dẫn thực hành của chúng tôi, thực tế để học Git, với các thực hành tốt nhất, các tiêu chuẩn được công nghiệp chấp nhận và bao gồm bảng gian lận. Ngừng các lệnh git googling và thực sự tìm hiểu nó! stack abuse
stck abuse
stck buse
Chúng ta có thể thấy - phương pháp riêng của chúng ta thực hiện theo cách tương tự như phương thức original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
2, nhưng nó kém hiệu quả hơn rất nhiều:original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
0Thời gian các phương pháp này dẫn đến: original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
1Sự kết luậnTrong hướng dẫn này, chúng tôi đã khám phá cách chúng tôi có thể xóa các ký tự khỏi một chuỗi trong Python. Chúng ta đã thấy cách sử dụng các phương thức original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
2 và original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
3 để loại bỏ các ký tự bằng cách thay thế chúng bằng một chuỗi trống hoặc unicode của chúng bằng String after removing the character 'a': stck buse
9.Sau đó, chúng tôi đã sử dụng original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
2 để loại bỏ một số lần xuất hiện được xác định trước của ký tự đã cho và thậm chí là vòng lặp String after removing the character 'a': stck buse
7 cũ tốt. Phương pháp original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
3 rất hữu ích nếu chúng ta phải xóa một tập hợp các ký tự, vì chúng ta có thể cung cấp cho nó một bảng dịch. Và phương pháp original_string = "stack abuse"
# Removing character 'a' and replacing with an empty character
new_string = original_string.replace('a', '')
print("String after removing the character 'a':", new_string)
2 rất tiện dụng nếu chúng ta muốn loại bỏ một số lần xuất hiện của một ký tự nhất định.
Làm cách nào để loại bỏ các biểu tượng đặc biệt trong Python?
Sử dụng 'str.Thay thế (), chúng ta có thể thay thế một ký tự cụ thể.Nếu chúng ta muốn xóa ký tự cụ thể đó, hãy thay thế ký tự đó bằng một chuỗi trống.STR.Phương thức thay thế () sẽ thay thế tất cả các lần xuất hiện của ký tự cụ thể được đề cập.replace that character with an empty string. The str. replace() method will replace all occurrences of the specific character mentioned.
Làm thế nào để bạn loại bỏ các ký tự không mong muốn khỏi văn bản trong Python?
Python Xóa ký tự khỏi chuỗi bằng cách sử dụng dịch python python dịch () Chức năng Thay thế từng ký tự trong chuỗi bằng bảng dịch đã cho.Chúng tôi phải chỉ định điểm mã Unicode cho ký tự và 'Không' làm thay thế để xóa nó khỏi chuỗi kết quả.using translate()
Python string translate() function replace each character in the string using the given translation table. We have to specify the Unicode code point for the character and 'None' as a replacement to remove it from the result string.
Làm thế nào để bạn tránh các nhân vật đặc biệt trong Python?
Loại bỏ các ký tự đặc biệt bao gồm các chuỗi sử dụng python isalnum.Python có một phương thức chuỗi đặc biệt,.isalnum (), trả về true nếu chuỗi là một ký tự alpha-numeric và trả về sai nếu không.Chúng ta có thể sử dụng điều này, để lặp qua một chuỗi và nối vào một chuỗi mới, chỉ có các ký tự alpha-numeric. |