import string import re def remove_punctuation_from_array(stringvalue): """ 删除字符串数组中每个字符串的标点符号 参数: stringvalue: 包含多个字符串的列表/数组 返回: 删除标点符号后的新字符串列表 """ # 创建翻译表,删除所有标点符号 translator = str.maketrans('', '', string.punctuation) # 对数组中的每个字符串应用翻译表 cleaned_strings = [text.translate(translator) for text in stringvalue] return cleaned_strings def remove_punctuation_regex(text_list): """ 方法2: 使用正则表达式 - 灵活且易读 """ return [re.sub(r'[^\w\s]', '', text) for text in text_list] def remove_punctuation_filter(text_list): """ 方法3: 使用列表推导式和isalnum() - 简单直观 """ return [''.join(char for char in text if char.isalnum() or char.isspace()) for text in text_list] if __name__ == "__main__": # 示例:假设stringvalue存储了三个字符串 stringvalue = [ "Hello, World!", "Python's great, isn't it?", "Wait... what?! Really?!" ] print("原始字符串数组:") for i, s in enumerate(stringvalue, 1): print(f"{i}. '{s}'") # 删除标点符号 result = remove_punctuation_from_array(stringvalue) print("\n删除标点符号后:") for i, s in enumerate(result, 1): print(f"{i}. '{s}'") print("\n" + "="*60) print("其他方法(如果需要):") print("="*60) # 方法2: 使用正则表达式 result_regex = remove_punctuation_regex(stringvalue) print("\n正则表达式方法:") for i, s in enumerate(result_regex, 1): print(f"{i}. '{s}'") # 方法3: 使用isalnum过滤 result_filter = remove_punctuation_filter(stringvalue) print("\nisalnum过滤方法:") for i, s in enumerate(result_filter, 1): print(f"{i}. '{s}'")