python字符串筛选输出_如何在Python中过滤字符串列表

Python使用列表数据类型在顺序索引中存储多个数据。它的工作方式类似于其他编程语言的数字数组。filter()方法是Python的一种非常有用的方法。可以使用filter()方法从Python中的任何字符串、列表或字典中过滤一个或多个数值。它根据任何特定条件过滤数据。当条件返回true时,它将存储数据,而返回false时将丢弃数据。本文通过使用不同的示例展示了如何在Python中过滤列表中的字符串数据。您必须使用Python 3+来测试本文的示例。

使用另一个列表过滤字符串列表

本示例说明了如何在不使用任何方法的情况下过滤字符串列表中的数据。 字符串列表在此使用另一个列表进行过滤。 在此,声明了两个列表变量,名称分别为list1和list2。 使用list1的值过滤list2的值。 该脚本会将list2的每个值的第一个单词与list1的值进行匹配,并打印list1中不存在的那些值。

#coding=utf-8

# 声明两个列表变量

list1 = ['Python', 'PHP', 'Java', 'Bash']

list2 = ['JavaScript是客户端脚本语言',

'PHP是服务器端脚本语言',

'Java是一种编程语言',

'Kotlin是一种静态编程语言']

# 根据第一个列表过滤第二个列表

filter_data = [x for x in list2 if

all(y not in x for y in list1)]

# 在过滤前和过滤后打印列表数据

print("第一个列表的内容:", list1)

print("第二个列表的内容:", list2)

print("过滤后的第二个列表的内容:", filter_data)

运行脚本。 在此,list1不包含单词“Kotlin”。 输出将仅包含list2中的一个值,即 ['Kotlin是一种静态编程语言']。

如何在Python中过滤字符串列表

输出如下:

第一个列表的内容: ['Python', 'PHP', 'Java', 'Bash']

第二个列表的内容: ['JavaScript是客户端脚本语言', 'PHP是服务器端脚本语言', 'Java是一种编程语言', 'Kotlin是一种静态编程语言']

过滤后的第二个列表的内容: ['Kotlin是一种静态编程语言']

使用另一个列表和自定义函数过滤字符串列表

本示例说明如何使用另一个列表和自定义过滤器功能过滤字符串列表。 该脚本包含两个名为list1和list2的列表变量。 自定义过滤器功能将找出两个列表变量的公共值。

# 声明两个列表变量

list1 = ['100', '67', '39', '505', '122', '287', '399']

list2 = ['70', '100', '308', '415', '362', '230']

# 声明一个函数来过滤第一个列表中的数据

def Filter(list1, list2):

return [n for n in list1 if

any(m in n for m in list2)]

# 在过滤器之前和之后打印列表数据

print("list1的的内容:", list1)

print("list2的的内容:", list2)

print("过滤后的数据",Filter(list1, list2))

运行脚本。 两个列表变量中都存在100的值。 运行脚本后,将生成以下输出。

list1的的内容: ['100', '67', '39', '505', '122', '287', '399']

list2的的内容: ['70', '100', '308', '415', '362', '230']

过滤后的数据 ['100']

如何在Python中过滤字符串列表

使用正则表达式过滤字符串列表

通过使用前两个示例中的all()和any()方法来过滤列表。 在此示例中,使用正则表达式从列表中过滤数据。 正则表达式是一种模式,通过该模式可以搜索或匹配任何数据。 Python中使用're'模块在脚本中应用正则表达式。 在此,使用主题代码声明列表。 正则表达式用于过滤以“ CSE”开头的主题代码。 正则表达式模式中使用'^'符号在文本的开头进行搜索。

# 导入re模块以使用正则表达式

import re

# 声明列表包含科目编号

sublist = ['IDC-108', 'OKY-309', 'IDC-709', 'PHP-102', 'MIO-801']

# 声明过滤功能

def Filter(datalist):

# 根据列表中的正则表达式搜索数据

return [val for val in datalist

if re.search(r'^IDC', val)]

# 打印过滤器数据

print(Filter(sublist))

运行脚本。 子列表变量包含两个以“IDC”开头的值。 运行脚本后,将显示以下输出。

['IDC-108', 'IDC-709']

如何在Python中过滤字符串列表

使用lamda表达式过滤字符串列表

本示例说明了使用lamda表达式从字符串列表中过滤数据。 在这里,名为search_word的列表变量用于从名为text的文本变量中过滤内容。 通过使用split()方法,基于空间将文本内容转换为名为text_word的列表。 lamda表达式将忽略text_word中存在于search_word中的那些值,并通过添加空格将过滤后的值存储在变量中。

# 声明一个包含linuxidc_word中关键词的列表

linuxidc_word = ["系统", "linuxidc", "Python", "Kotlin"]

# 定义文本,从列表中搜索单词

text = "Linux公社 linuxidc 是专业的 Linux 系统 门户网站,实时发布 最新 Kotlin 资讯!"

# 根据空格分割文本并将单词存储在列表中

text_word = text.split()

# 使用lambda表达式过滤数据

filter_text = ' '.join((filter(lambda val: val not in linuxidc_word, text_word)))

# 在过滤前和过滤后打印文本

print("\n过滤前的文本:\n", text)

print("过滤后的文本:\n", filter_text)

运行脚本。 运行脚本后,将显示以下输出。

过滤前的文本:

Linux公社 linuxidc 是专业的 Linux 系统 门户网站,实时发布 最新 Kotlin 资讯!

过滤后的文本:

Linux公社 是专业的 Linux 门户网站,实时发布 最新 资讯!

如何在Python中过滤字符串列表

使用filter()方法过滤字符串列表

filter()方法接受两个参数。 第一个参数采用函数名称或“ None”,第二个参数采用列表变量的名称作为值。 filter()方法如果返回true,则从列表中存储这些数据,否则将丢弃该数据。 在此,第一个参数值不指定任何值。 所有不为false的值将从列表中检索为已过滤数据。

#声明混合数据列表

listData = ['linuxidc', 90, 9, 'com', 100, False, 22, True, '1']

# 使用None和列表调用filter()方法

filteredData = filter(None, listData)

#过滤数据后打印列表

print('过滤后的列表:')

for val in filteredData:

print(val)

运行脚本。该列表只包含一个false值,在过滤后的数据中将省略该false值。运行脚本后将出现以下输出。

如何在Python中过滤字符串列表

总结:

当您需要从列表中搜索和检索特定值时, 过滤非常有用。我希望上面的例子能帮助读者理解从字符串列表中过滤数据的方法。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/499238.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

销售流程图_工作流程图网络图模板,招聘销售合同库存,完整设计拿来就用

Hello大家好,我是帮帮。今天跟大家分享一组工作流程图模板,招聘销售合同库存,完整设计拿来就用。为了让大家能更稳定的下载模板,我们又开通了全新下载方式(见文章末尾),以便大家可以轻松获得免费模板和收费模板。メ大家…

协议详解_I2C协议详解

I2C通信协议I2C通信协议的基础简介I2C「Inter-integrated Circuit」总线支持设备之间的短距离通信,用于处理器和一些外围设备之间的接口,它只需要两根信号线来完成信息交换。I2C最早是飞利浦在1982年开发设计。I2C是同步传输信号,关于同步和异…

http 302错误_http面试题

作者:忘れられたくない出自:SegmentFault 思否原文:segmentfault.com/a/1190000024538846http状态码分类1xx服务器收到请求2xx请求成功3xx重定向4xx客户端错误5xx服务端错误常见状态码200 成功301 永久重定向302 临时重定向304资源未被修改40…

controller属于哪一层_孺教网分享|家长层次有五层,家长们都来看看,你属于哪一层?...

经常听到这样一些话:养不教父之过,有其父必有其子。孩子是父母的影子,父母是孩子的第一任老师.......这些都反映了在孩子成长的过程中,家庭教育的重要性。而家庭教育往往体现在非智力因素方面,比如感恩、诚信、善良、尊…

cad里面f命令用不了_CAD出现命令无效、失灵等问题?不用慌,两招帮你快速解决...

一、CAD常见无效问题1、填充命令无效我们有时候需要对某一区域进行填充,但是却发现怎么也填充不出来,这个时候就应该检查一下【选项】设置了,具体操作步骤如下:①命令行中输入【OP】,按下回车键调出【选项】对话框&…

powershell 遍历json_如何从Powershell脚本读取JSON数据并遍历它

我开始学习Powershell,我正在尝试读取JSON文件。如何从Powershell脚本读取JSON数据并遍历它这里是我的JSON文件(名为“versions.json”):{"versions": {"1.0.0": {"Component1": "1.0.0","Component2"…

卫生纸玫瑰花折法5步_餐巾纸折纸玫瑰花的折法图解教程

餐巾纸折纸玫瑰花的折法图解教程折纸玫瑰花的制作方法非常的多,但是常见的折纸玫瑰花制作方法基本上都是以方形纸张进行折叠来制作而成的。这里介绍的这种折纸玫瑰的制作方法更加的简单、经济和环保一些。同时其有着一个极大的优点,那就是无论在哪里都可…

mysql ==null_mysql = null 问题

SELECT * FROM cms_user WHERE ageNULL;Empty set (0.03 sec)查询表中记录age值为nullmysql> SELECT * FROM cms_user WHERE age<>NULL;------------------------------------------------------------------------| id | username | password | email | regTim…

mysql status_mysql status查看

总结了几种查看MySQL运行状况的方法&#xff0c;如下&#xff1a;1、phpMyAdmin最简单的方式&#xff0c;在phpMyAdmin直接点击状态查看&#xff0c;详细如下图。这查看的是MySQL的一些运行状况数值&#xff0c;这种方式被大多数系统管理员所不齿&#xff0c;因为专业的MySQL服…

windows mysql 备份_Windows下MySQL数据库备份脚本(二) | 系统运维

说明&#xff1a;MySQL数据库安装目录&#xff1a;C:\Program Files\MySQL\MySQL Server 5.0MySQL数据库存放目录&#xff1a;C:\Program Files\MySQL\MySQL Server 5.0\dataMySQL数据库备份目录&#xff1a;D:\MySQLdata_Bak实现目的&#xff1a;备份MySQL数据库存放目录中的m…

php mysql 秒杀_redis+PHP实现高并发下秒杀数据入库的问题

在高并发下实现抢购秒杀功能中&#xff0c;我有一个疑问&#xff0c;就是数据入库的问题&#xff0c;什么时候入库。设想思路&#xff1a;1.判断他抢购成功了&#xff0c;立马把生成的订单数据写入mysql订单表&#xff0c;同时库存表字段减少1&#xff1b;2.判断抢购成功后&…

mysql8解决区分大小写问题_球磨机“包球”和“饱磨”分不清?点进来快速区分,解决问题...

球磨机的“包球”和“饱磨”现象都是设备在磨矿过程中出现的常见故障&#xff0c;大多数用户对这两种情况不是特别了解&#xff0c;出现问题时也不知从何下手&#xff0c;导致机器无法正常作业。其实“包球”和“饱磨”有一定的相似之处&#xff0c;同时在产生原因、处理方法等…

控制浏览器增加新页签的js_技术网站重写复制按键 js 跳转到注册页,就能增加用户?...

背景技术网站重写复制按键的 js &#xff0c;作为开发人员你会为了复制一段代码而注册一个用户吗&#xff1f;一个小需求变动&#xff0c;将跳转详情页改为 target_blank 的方式打开新页面。原来用 Vue.js 的路由代码 push 需要换成 resolve &#xff0c;本文将介绍该需求调整过…

win7系统一直反复重启_iPhone7开机白苹果反复重启进不了系统维修过程

故障现象iPhone7开机时在出现苹果图标后反复重启&#xff0c;无法进入系统。维修过程拿到手机之后开机测试&#xff0c;在显示苹果图标界面反复重启。这种故障是开机过程不能通过自检造成的。由于客户要保留资料&#xff0c;所以是不能刷机。根据经验判断应该是基带部分有问题。…

mysql去掉小数点多余0_mysql数据库个性化需求:版本号排序

概述今天主要介绍一个MySQL数据库版本号排序问题&#xff0c;一起来看看吧~需求按版本号排序&#xff0c;版本号字段为字符类型&#xff0c;其中1.2.10应大于1.2.9&#xff0c;但mysql数据库会认为1.2.9大于1.2.1正确的版本号应该是 1.3.0 大于 1.2.231.2.10 大于 1.2.9实现sql…

mysql语句在哪编写_mysql常见问题七:编写sql语句

一、删除除了学号字段以外&#xff0c;其它字段都相同的冗余记录&#xff0c;只保留一条&#xff01;(也就是要删除凤姐和田七中一条重复数据只留一条)要求结果数据&#xff1a;原始数据&#xff1a;CREATE TABLEtbl_students (idint NOT NULL,namevarchar(10) DEFAULT NULL,sa…

lamp mysql5.0_CentOS 5/6 LAMP(Apache MySQL PHP)一键安装脚本

适用系统&#xff1a;CentOS-5 (32bit/64bit)CentOS-6 (32bit/64bit)安装了什么&#xff1a;1、Apache 2.2.202、MySQL 5.0.923、PHP 5.2.174、ZendOptimizer 3.3.95、eAccelerator 0.9.6.16、phpmyadmin 3.3.47、vsftpd 2.3.4实现了什么功能1、一键配置LAMP经典环境2、自动删除…

mysql safe file priv_MYSQL的secure_file_priv参数怎么用?

MYSQL的secure_file_priv参数怎么用&#xff1f;发布时间&#xff1a;2020-06-01 14:03:22来源&#xff1a;亿速云阅读&#xff1a;639作者&#xff1a;LeahMYSQL的secure_file_priv参数怎么用&#xff1f;针对这个问题&#xff0c;今天小编总结这篇有关secure_file_priv的文章…

mysql stdistance_postgis的geography_columns和geometry_columns有什么区别

1、先说说Sql Server中geometry和geography的区别&#xff1a;geometry&#xff1a;planar 平面坐标系【supported by SQL Server conforms to the Open Geospatial Consortium (OGC) Simple Features for SQL Specification version 1.1.0.】geography&#xff1a; terrest…

python依赖平台吗_在Python中创建快速循环最依赖于平台和pythonversion的方法是什么?...

我正在用Python编写一个科学应用程序&#xff0c;其核心是一个处理器密集型的循环。我希望尽可能地优化这一点&#xff0c;将给最终用户带来的不便降到最低&#xff0c;他们可能会将其作为Python脚本的未编译集合&#xff0c;并将使用Windows、Mac和(主要是Ubuntu)Linux。在它目…