Tôi có một danh sách các yếu tố chứa các ký tự đặc biệt. Tôi muốn chuyển đổi danh sách thành các ký tự chữ và số. Không có ký tự đặc biệt. my_list = ["on@3", "hai#", "thre%e"]]
đầu ra mong đợi của tôi là,
out_list = ["one","two","three"]
Tôi không thể đơn giản áp dụng
['on3', 'two', 'three']
1 cho các mặt hàng này, xin vui lòng giúp đỡ.
Đã hỏi ngày 15 tháng 11 năm 2017 lúc 7:36Nov 15, 2017 at 7:36
3
Đây là một giải pháp khác:
import re
my_list= ["on@3", "two#", "thre%e"]
print [re.sub['[^a-zA-Z0-9]+', '', _] for _ in my_list]
output:
['on3', 'two', 'three']
Đã trả lời ngày 15 tháng 11 năm 2017 lúc 7:46Nov 15, 2017 at 7:46
Mahesh Kariamahesh KariaMahesh Karia
2.0351 Huy hiệu vàng11 Huy hiệu bạc21 Huy hiệu đồng1 gold badge11 silver badges21 bronze badges
Sử dụng phương thức
['on3', 'two', 'three']
2 để áp dụng cùng một bảng dịch cho tất cả các chuỗi:removetable = str.maketrans['', '', '@#%']
out_list = [s.translate[removetable] for s in my_list]
Phương pháp tĩnh
['on3', 'two', 'three']
3 là một công cụ hữu ích để tạo ra bản đồ dịch; Hai đối số đầu tiên là các chuỗi trống vì bạn không thay thế các ký tự, chỉ xóa. Chuỗi thứ ba chứa tất cả các ký tự bạn muốn xóa.Demo:
>>> my_list = ["on@3", "two#", "thre%e"]
>>> removetable = str.maketrans['', '', '@#%']
>>> [s.translate[removetable] for s in my_list]
['on3', 'two', 'three']
Đã trả lời ngày 15 tháng 11 năm 2017 lúc 7:43Nov 15, 2017 at 7:43
Martijn Pieters ♦ Martijn Pieters♦Martijn Pieters
995K277 Huy hiệu vàng3919 Huy hiệu bạc3261 Huy hiệu Đồng277 gold badges3919 silver badges3261 bronze badges
3
thử cái này:
l_in = ["on@3", "two#", "thre%e"]
l_out = [''.join[e for e in string if e.isalnum[]] for string in l_in]
print l_out
>['on3', 'two', 'three']
Đã trả lời ngày 15 tháng 11 năm 2017 lúc 7:46Nov 15, 2017 at 7:46
Mahesh Kariamahesh Karia
l = ['@','#','%']
out_list = []
for x in my_list:
for y in l:
if y in x:
x = x.replace[y,'']
out_list.append[x]
break
2.0351 Huy hiệu vàng11 Huy hiệu bạc21 Huy hiệu đồng
out_list = [ x.replace[y,''] for x in my_list for y in l if y in x ]
Sử dụng phương thức
['on3', 'two', 'three']
2 để áp dụng cùng một bảng dịch cho tất cả các chuỗi:Phương pháp tĩnh
['on3', 'two', 'three']
3 là một công cụ hữu ích để tạo ra bản đồ dịch; Hai đối số đầu tiên là các chuỗi trống vì bạn không thay thế các ký tự, chỉ xóa. Chuỗi thứ ba chứa tất cả các ký tự bạn muốn xóa.Nov 15, 2017 at 7:39
Đã trả lời ngày 15 tháng 11 năm 2017 lúc 7:43Van Peer
Martijn Pieters ♦ Martijn Pieters2 gold badges22 silver badges34 bronze badges
5
Trong hướng dẫn này, chúng tôi sẽ giải quyết một chương trình về cách xóa các ký tự đặc biệt khỏi chuỗi Python. & NBSP;how to remove special characters from string Python.
- Cách xóa các ký tự đặc biệt khỏi chuỗi Python [bao gồm cả không gian]
- Phương pháp 1 - Sử dụng phương thức isalmun []
- Phương pháp 2 - Sử dụng phương thức thay thế []
- Phương pháp 3 - Sử dụng Filter []
- Phương pháp 4 - Sử dụng chức năng Join + Generator
- Cách xóa các ký tự đặc biệt khỏi chuỗi python ngoại trừ không gian
- Phương pháp 1 - Sử dụng isalnum []
- Phương pháp 2 - Sử dụng biểu thức regex
- Sự kết luận
Chúng tôi sẽ giải quyết tuyên bố vấn đề trên theo 4 cách khác nhau.
Phương pháp 1 - Sử dụng phương thức isalmun []
Phương pháp 2 - Sử dụng phương thức thay thế [] return True if all the characters in the string are alphanumeric. Alphanumeric characters meaning the character can alphabet[a-z] or it can be a number[0-9]. And it returns false if a string contains the non-alphanumeric character such as @, !, #, $, %, &, space, etc.
Example:
s = "TheProblemSeeker10"
print[s.isalnum[]]
Phương pháp 3 - Sử dụng Filter []: True
Phương pháp 4 - Sử dụng chức năng Join + Generator
Cách xóa các ký tự đặc biệt khỏi chuỗi python ngoại trừ không gian
- Phương pháp 1 - Sử dụng isalnum []
- Phương pháp 2 - Sử dụng biểu thức regex
- Sự kết luậnisalnum[] method.
- Chúng tôi sẽ giải quyết tuyên bố vấn đề trên theo 4 cách khác nhau.
- Python isalnum [] trả về đúng nếu tất cả các ký tự trong chuỗi là chữ và số. Các ký tự chữ và số có nghĩa là ký tự có thể bảng chữ cái [A-Z] hoặc nó có thể là một số [0-9]. Và nó trả về false nếu một chuỗi chứa ký tự không phải là số đồng âm như @,!, #, $, %, &, Space, v.v.
Đầu ra: Đúng
#define input string
input_string = "The Problem [email protected]"
final_string = "" #define string for ouput
for character in input_string:
if[character.isalnum[]]:
# if character is alphanumeric concat to final_string
final_string = final_string + character
print["Sample String:", input_string]
print["Final String:", final_string]
Output::
import re
my_list= ["on@3", "two#", "thre%e"]
print [re.sub['[^a-zA-Z0-9]+', '', _] for _ in my_list]
0Phương pháp 2 - Sử dụng phương thức thay thế []
Phương pháp 3 - Sử dụng Filter []
Phương pháp 4 - Sử dụng chức năng Join + Generator
import re
my_list= ["on@3", "two#", "thre%e"]
print [re.sub['[^a-zA-Z0-9]+', '', _] for _ in my_list]
1Output::
import re
my_list= ["on@3", "two#", "thre%e"]
print [re.sub['[^a-zA-Z0-9]+', '', _] for _ in my_list]
0Phương pháp 3 - Sử dụng Filter []
Phương pháp 4 - Sử dụng chức năng Join + Generator
Phương pháp 4 - Sử dụng chức năng Join + Generator
import re
my_list= ["on@3", "two#", "thre%e"]
print [re.sub['[^a-zA-Z0-9]+', '', _] for _ in my_list]
3Output:
import re
my_list= ["on@3", "two#", "thre%e"]
print [re.sub['[^a-zA-Z0-9]+', '', _] for _ in my_list]
0Phương pháp 4 - Sử dụng chức năng Join + Generator
Cách xóa các ký tự đặc biệt khỏi chuỗi python ngoại trừ không gian
Phương pháp 4 - Sử dụng chức năng Join + Generator
import re
my_list= ["on@3", "two#", "thre%e"]
print [re.sub['[^a-zA-Z0-9]+', '', _] for _ in my_list]
3Output:
import re
my_list= ["on@3", "two#", "thre%e"]
print [re.sub['[^a-zA-Z0-9]+', '', _] for _ in my_list]
0Cách xóa các ký tự đặc biệt khỏi chuỗi python ngoại trừ không gian
Phương pháp 1 - Sử dụng isalnum []
Phương pháp 1 - Sử dụng isalnum []
Phương pháp 2 - Sử dụng biểu thức regex
Sự kết luận
- Phương pháp 1 - Sử dụng isalnum []
- Phương pháp 2 - Sử dụng biểu thức regex
- Sự kết luận
- Chúng tôi sẽ giải quyết tuyên bố vấn đề trên theo 4 cách khác nhau.
- Python isalnum [] trả về đúng nếu tất cả các ký tự trong chuỗi là chữ và số. Các ký tự chữ và số có nghĩa là ký tự có thể bảng chữ cái [A-Z] hoặc nó có thể là một số [0-9]. Và nó trả về false nếu một chuỗi chứa ký tự không phải là số đồng âm như @,!, #, $, %, &, Space, v.v.isalnum[] method.
- Chúng tôi sẽ giải quyết tuyên bố vấn đề trên theo 4 cách khác nhau.
- Python isalnum [] trả về đúng nếu tất cả các ký tự trong chuỗi là chữ và số. Các ký tự chữ và số có nghĩa là ký tự có thể bảng chữ cái [A-Z] hoặc nó có thể là một số [0-9]. Và nó trả về false nếu một chuỗi chứa ký tự không phải là số đồng âm như @,!, #, $, %, &, Space, v.v.
Phương pháp 4 - Sử dụng chức năng Join + Generator
import re
my_list= ["on@3", "two#", "thre%e"]
print [re.sub['[^a-zA-Z0-9]+', '', _] for _ in my_list]
7Output::
Cách xóa các ký tự đặc biệt khỏi chuỗi python ngoại trừ không gianPhương pháp 2 - Sử dụng biểu thức regex
Sự kết luận[^A-Za-z0-9]+.
Chúng tôi sẽ giải quyết tuyên bố vấn đề trên theo 4 cách khác nhau.
Phương pháp 4 - Sử dụng chức năng Join + Generator
import re
my_list= ["on@3", "two#", "thre%e"]
print [re.sub['[^a-zA-Z0-9]+', '', _] for _ in my_list]
9Output::
['on3', 'two', 'three']
0Sự kết luận
Chúng tôi sẽ giải quyết tuyên bố vấn đề trên theo 4 cách khác nhau.isalnum[], replace[] methods we can remove special characters from string python including space.
Python isalnum [] trả về đúng nếu tất cả các ký tự trong chuỗi là chữ và số. Các ký tự chữ và số có nghĩa là ký tự có thể bảng chữ cái [A-Z] hoặc nó có thể là một số [0-9]. Và nó trả về false nếu một chuỗi chứa ký tự không phải là số đồng âm như @,!, #, $, %, &, Space, v.v.regex expression and isalnum[] method.