十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
def prime(n):
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站建设、成都网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的武平网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
if n=2:
return []
result=[False,False]+[True]*(n-2)
for i in range(len(result)):
if result[i]==True:
for j in range(2*i,len(result),i):
result[j]=False
return [i for i in range(len(result)) if result[i]==True]
def bi_search(prime,primelist,start,end):
if startend :
return -1
mid=(start+end)//2
if primelist[mid]==prime:
return mid
elif primelist[mid]prime:
end=mid-1
else:
start=mid+1
return bi_search(prime,primelist,start,end)
if __name__=='__main__':
n=int(raw_input())
primelist=prime(n)
num=raw_input()
while num:
num=int(num)
index=bi_search(num,primelist,0,len(primelist)-1)
print(index)
num=raw_input()
python中遇到不明白的地方,可以试试help
这里要查看find的作用,可以键入help(str.find),然后得到提示如下:
Help on method_descriptor:
find(...)
S.find(sub[, start[, end]]) - int
Return the lowest index in S where substring sub is found,
such that sub is contained within S[start:end]. Optional
arguments start and end are interpreted as in slice notation.
Return -1 on failure.
解释要点大致如下:
find()方法检测字符串S中是否包含子字符串sub,如果指定start(开始) 和 end(结束)范围,则检查是否包含在指定范围内,如果包含子字符串返回开始的索引值(如果包含多个字串,只返回最左边出现的索引值),查找失败返回-1。以本题为例:
s="abcd1234"
s.find("cd"),在字符串s中查找字串"cd"第一次出现时s中的索引值,因为索引从0开始,所以结果为2,注意s中出现多次cd的情况,例如:
s="abcd1234cd"
s.find("cd")的结果依然是2,找不到时返回-1,比如:
s="1234"
s.find("cd")的结果为-1
Pos()功能在一个字符串中查找所包含的另一个字符串的起始位置。语法Pos ( string1, string2 {, start } )
参数string1:string类型,指定要从中查找子串string2的字符串string2:string类型,指定要在string1中查找的字符串start:long类型,可选项,指定从string1的第几个字符开始查找。缺省值为1返回值Long。函数执行成功时返回在start位置后string2在string1中第一次出现的起始位置。如果在string1中按指定要求未找到string2、或start的值超过了string1的长度,那么Pos()函数返回0。如果任何参数的值为NULL,Pos()函数返回NULL。用法Pos()函数在字符串查找时区分大小写,因此,"aa"不匹配"AA"。
拓展资料:
公式的运用
一、数字处理
1、取绝对值函数
公式:=ABS(数字)
2、取整函数
公式:=INT(数字)
3、四舍五入函数
公式:=ROUND(数字,小数位数)
二、判断公式
1、如果计算的结果值错误那么显示为空
公式:=IFERROR(数字/数字,)
说明:如果计算的结果错误则显示为空,否则正常显示。
2、IF语句的多条件判定及返回值
公式:IF(AND(单元格(逻辑运算符)数值,指定单元格=返回值1),返回值2,)
说明:所有条件同时成立时用AND,任一个成立用OR函数。
三、常用的统计公式
1、统计在两个表格中相同的内容
公式:B2=COUNTIF(数据源:位置,指定的,目标位置)
说明:如果返回值大于0说明在另一个表中存在,0则不存在。
如果,在此示例中所用到的公式为:B2=COUNTIF(Sheet15!A:A,A2)
2、统计不重复的总数据
公式:C2=SUMPRODUCT(1/COUNTIF(A2:A8,A2:A8))
说明:用COUNTIF函数统计出源数据中每人的出现次数,并用1除的方式把变成分数,最后再相加。
四、数据求和公式
1、隔列求和的应用
公式:H3=SUMIF($A$2:$G$2,H$2,A3:G3)或=SUMPRODUCT((MOD(COLUMN(B3:G3),2)=0)*B3:G3)
说明:如果在标题行中没有规则就可以用第2个公式
2、单条件应用之求和
公式:F2=SUMIF(A:A,C:C)
说明:这是SUMIF函数的最基础的用法
五、查找与引用公式
1、单条件查找
说明:VLOOKUP是excel中最常用的查找方式
六、字符串处理公式
1、多单元格字符串的合并
说明:Phonetic函数只能合并字符型数据,不能合并数值。
2、截取结果3位之外的部分
说明:LEN计算总长度,LEFT从左边截总长度-3个。