python在一个列表中查找

# -*- coding: utf-8 -*-
__author__ = ‘Administrator‘
import bisect
#简化一些操作
#1:在一个列表中查找
"""
说明:需要在一个列表的实例中提供一个搜索算法,
对该列表的已排序版本执行二分查找就可以将复杂度从o(n)降至o(log n)
"""
def listfind(seq,el):
    pos=bisect.bisect(seq,el)
    if pos==0 or (pos==len(seq) and seq[-1]!=el):
        return -1
    return pos-1
seq=[2,3,7,8,9]
print listfind(seq,9)
print listfind(seq,6)
print listfind(seq,-1)

时间: 2024-10-08 10:32:43

python在一个列表中查找的相关文章

python中如何不区分大小写的判断一个元素是否在一个列表中

python中判断某一个元素是否在一个列表中,可以使用关键字in 和 not in. 示例如下: 如果需要输出相应的信息,可以搭配使用if语句,这里不赘述. ------------------------------------------------------------------------------------------分割线------------------------------------------------------------------------------

40 python 正则表达式 match方法匹配字符串 使用search函数在一个字符串中查找子字

第一课: 使用match方法匹配字符串 # 正则表达式:使用match方法匹配字符串 ''' 正则表达式:是用来处理文本的,将一组类似的字符串进行抽象,形成的文本模式字符串 windows dir *.txt file1.txt file2.txt abc.txt test.doc a-file1.txt-b linux/mac ls 主要是学会正则表达式的5方面的方法 1. match:检测字符串是否匹配正则表达式 2. search:在一个长的字符串中搜索匹配正则表达式的子字符串 3. fi

Python统计列表中的重复项出现的次数的方法

前言 在实际工作和学习中,经常会遇到很多重复的数据,但是我们又必须进行统计,所及这里简单介绍一下统计列表中重复项的出现次数的简单方法. 实例 本文实例展示了Python统计列表中的重复项出现的次数的方法,是一个很实用的功能,适合Python初学者学习借鉴.具体方法如下: #方法1: mylist = [1,2,2,2,2,3,3,3,4,4,4,4] myset = set(mylist)  #myset是另外一个列表,里面的内容是mylist里面的无重复 项 for item in myset

模拟实现在一个字符串中查找一个字符串

在标准库中有一个函数strstr()用于在一个字符串中查找一个规定的字符串,这个函数可以模拟实现一下,代码如下: #include <stdio.h> #include <assert.h> char *my_strstr(const char str[],const char strstr[]) {  int i = 0,j = 0,k = 0;  assert(str != NULL);  assert(strstr != NULL);  for(i = 0;str[i] !=

3.05 在一个表中查找与其他表不匹配的记录

问题:对于具有相同关键字的两个表,要在一个表中查找与另外一个不匹配的行.例如,要查找没有职员的部门. 要查找部门中每个员工的工作岗位需要在表需要在表deptno及emp中有一个等值联接.deptno列就是这两个表之间的公共值.但是,等值联接却不能直接显示出那个部门没有员工.这是因为在表emp和dept正在等值联接时,将会返回满足联接条件的所有行.可是我们只需要那些在表dept中不满足联接条件的行. 尽管乍看起来这个问题同前一个问题类似,但是要更复杂一些.其不同之处就是在前一个问题中,需要列出在表

【C语言】模拟实现strchr函数.即在一个字符串中查找一个字符第一次出现的位置并返回

//模拟实现strchr函数.即在一个字符串中查找一个字符第一次出现的位置并返回 #include <stdio.h> //#include <string.h> #include <assert.h> char* my_strchr(char *dst, char src) { assert(dst); while (*dst != '\0') { if (*dst == src) return dst; dst++; } return 0; } int main()

【c语言】模拟实现strchr函数,功能:在一个字符串中查找一个字符第一次出现的位置,如果没有出现返回NULL

// 模拟实现strchr函数,功能:在一个字符串中查找一个字符第一次出现的位置,如果没有出现返回NULL #include <stdio.h> #include <assert.h> char const* my_strchr(char const *p,char c) { assert(p != NULL); while (*p) { if (*p == c) return p; else p++; } return NULL; } int main() { char *p =

Python对列表中字典元素排序

问题起源 json对象a,b a = '{"ROAD": [{"id": 123}, {"name": "no1"}]}' b = '{"ROAD": [{"name": "no1"}, {"id": 123}]}' 特点:a,b对应的Python的对象中键对应的键值——列表中包含着相同的字典元素,但是唯一不同的是顺序不同.如果忽略顺序,如何判断两

Python统计列表中元素出现的次数

Python列表可以进行简单的统计,比如list的函数count()可以直接统计元素出现的次数. mylist = [2,2,2,2,2,2,3,3,3,3] myset = set(mylist) #删除列表中的重复元素   print myset    set([2, 3]) for item in myset: print mylist.count(item), " of ", item, " in list" 打印结果: 6 of 2 in list  #