取乙個整數a從右端開始的4 7位。

時間 2021-06-13 00:57:14

1樓:依雲

a // 1000 % 10000

看到有不少用把數轉成字串再擷取了,比如 int(str(a)[-7:-3])。行是行,但是當數很大時,轉成十進位制字串表示很慢的,看:

$ python -m timeit -s 'a = 2 ** 10000' 'a // 1000 % 10000'

100000 loops, best of 3: 14.6 usec per loop

$ python -m timeit -s 'a = 2 ** 10000' 'int(str(a)[-7:-3])'

1000 loops, best of 3: 444 usec per loop

$ python -m timeit -s 'a = 2 ** 100000' 'a // 1000 % 10000'

10000 loops, best of 3: 141 usec per loop

$ python -m timeit -s 'a = 2 ** 100000' 'int(str(a)[-7:-3])'

10 loops, best of 3: 43.2 msec per loop

如何判斷乙個 16 位乃至更高位的整數是否為乙個素數?

看了一下,大家給的答案都是估算方法,我講乙個準確方法,不是埃拉託色尼斯篩法。素數本身是沒有規律的,他的規律基於合數。以20為例,要求出小於20的素數的個數只要求合數個數就很容易得到。但是問題是會有許多重複的合數出現,比如15,他即會出現在20 3裡面,也會出現在20 5裡面,這樣就多算了乙個合數,實...

隨機產生乙個3位整數,將他的十位數變為0的python怎麼做?

import random num random randint 100 999 result num num 10 10 num 100 100 print result JackYang import numpy as np s np.random.randint 100,999 s str s...

從1到1億有一億個整數,是否有可能存在乙個整數,從來沒有人讀過它

戴放 不可能。一億太小了。地球上從古到今有過一萬億人。每個人能活30億秒,按照多位數三秒讀乙個算,一人一輩子能讀十億個整數。一萬億乘以十億等於10 21。你應該問,有沒有乙個22位以內的整數,從來沒有人讀過它?答案是肯定的。 o曦o 這個題像個悖論最後的唯一的結果就是不存在 首先如果存在假設是A 那...