比方说有一个排行榜(假设小于1000),需要选取出某个用户的相邻排名前两名和后两名;如果该用户本身没有前两名则在后两名中补齐(比如用户如果是第一名那么去2,3,4,5名),反之同理,用python实现。
代码如下,感觉挺笨,不过达到了效果:
假设一共0~14 15个数,输入任意0~14的数以及scope(如果显示前后两名则写4,奇数情况暂没考虑)
Pasting code; enter '--' alone on the line to stop.
: def t(selfid, scope):
: arr = range(15)
: l = len(arr)
: ind = arr.index(selfid)
:
: start = ind - scope/2
: end = ind + scope/2
: if start <= 0:
: end = end - start
: start = 0
: elif end >= l:
: start = start - (end - l) - 1
: end = l
:
: res = arr[start:end + 1]
: res.remove(selfid)
: return res
:--
测试代码如下:
for i in range(15):
print i, t(i, 4), i in t(i,4)
print '--------------------------'
....:
....:
0 [1, 2, 3, 4] False
--------------------------
1 [0, 2, 3, 4] False
--------------------------
2 [0, 1, 3, 4] False
--------------------------
3 [1, 2, 4, 5] False
--------------------------
4 [2, 3, 5, 6] False
--------------------------
5 [3, 4, 6, 7] False
--------------------------
6 [4, 5, 7, 8] False
--------------------------
7 [5, 6, 8, 9] False
--------------------------
8 [6, 7, 9, 10] False
--------------------------
9 [7, 8, 10, 11] False
--------------------------
10 [8, 9, 11, 12] False
--------------------------
11 [9, 10, 12, 13] False
--------------------------
12 [10, 11, 13, 14] False
--------------------------
13 [10, 11, 12, 14] False
--------------------------
14 [10, 11, 12, 13] False
--------------------------
欢迎拍砖,chop地址:http://chopapp.com/#s5jknzbm
分享到:
相关推荐
本文实例讲述了python实现判断数组是否包含指定元素的方法。分享给大家供大家参考。具体如下: python判断数组是否包含指定的元素的方法,直接使用in即可,python真是简单易懂 print 3 in [1, 2, 3] # membership ...
python 中数组的基本操作.pdf python 中数组的基本操作.pdf python 中数组的基本操作.pdf python 中数组的基本操作.pdf python 中数组的基本操作.pdf python 中数组的基本操作.pdf python 中数组的基本操作.pdf ...
我们使用Python的random模块生成了两个随机数组,分别是1到36中随机选取的5个数和1到12中随机选取的2个数。然后,我们使用加号运算符将这两个数组组合成一个新的数组,并输出结果。 需要注意的是,我们使用了random...
主要介绍了Python实现查找数组中任意第k大的数字算法,涉及Python针对数组的排序、查找等相关操作技巧,需要的朋友可以参考下
python数组
python数组 python数组方法
python利用数组和链表实现栈和队列 数组和链表.pdf
python学习笔记,包含-数组方法-数组排序-数组形状-对角线
使用Python打印数组时会遇到一个问题,当打印的数组元素比较多时,会出现只打印出数组开始与结尾部分中间部分用省略省略了,下面的方法可以完美解决这个问题
以及将图片以三维数组的形式输出方法python实现将一个数组逆序输出的方法python中实现将多个print输出合成一个数组Python实现二维数组输出为图片Python打印输出数组中全部元素Python算法输出1-9数组形成的结果为100...
python 实现 数组中重复的数字
python中删除数组中的某个元素几种方法
下面小编就为大家分享一篇python 显示数组全部元素的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
以下代码创建了一个包含三个整数的列表: ``` my_list = [1, 2, 3] ``` 可以使用索引访问列表中的元素: ``` print(my_list[0]) # 输出 1 print(my_list[1]) # 输出 2 print(my_list[2]) # 输出 3 ``` python-数组-...
本文实例讲述了python简单... 您可能感兴趣的文章:python把数组中的数字每行打印3个并保存在文档中的方法Python进行数据提取的方法总结在Python中等距取出一个数组其中n个数的实现方式python [:3] 实现提取数组中的数
数组类型是各种编程语言中基本的数组结构了,本文来盘点下Python中各种“数组”类型的实现。 list tuple array.array str bytes bytearray 其实把以上类型都说成是数组是不准确的。这里把数组当作一个广义的...
今天小编就为大家分享一篇python 统计数组中元素出现次数并进行排序的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
请编程实现一个函数,找出数组中任意一个数值等于其下标的元素,例如在数组【-3,-1,1,3,5】中,3和他的下标相等。 采用二分查找:如果数组中的数字小于下标,由于下标是-1的递减数列,但是数组中的元素差值大于...