python選取陣列中任意位置的相鄰元素

2021-08-26 06:13:28 字數 1971 閱讀 1278

比方說有乙個排行榜(假設小於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

--------------------------

Python文字中選取地點位置

1.固定格式求地點 location str 長沙開區橄欖城小區 data zhuti qumin tq 1 投訴長沙開區橄欖城小區車位違建 徐匯區虹漕路461號58號樓 泉州市洛江區萬安塘西工業區 朝陽區北苑華貿城 import addressparser df addressparser.tra...

Python 從列表中選取任意個元素求和

碰到乙個比較好玩的問題,我有許多小額的發票,需要從這些發票中湊出乙個指定的整數來。怎麼去實現呢?這些小額發票,我們可以用乙個列表來表示。比如a 1,3,5,6,8 那麼這個列表的元素可能產生多少種組合呢?由於列表裡面每乙個元素都可能有,也可能沒有。所以這裡面就有2的5次方種變化。驗證 ps 參考cs...

Python引用任意位置模組方法總結

最近寫python需要匯入自己寫的模組,但是如果程式和模組不在同一級目錄下,在命令列裡面執行就會出現modulenotfounderror 這麼說是因為在pycharm裡面設定根目錄就能直接匯入 不過為了程式以後遷移方便,下面說一下具體的方法。環境 windows 10 python 3.6.8這種...