python如何得到1~20的奇数列表与偶数列表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python如何得到1~20的奇数列表与偶数列表相关的知识,希望对你有一定的参考价值。

bbqs = []
for oprg in range(1,21,):
bbqs.append(oprg)
print(bbqs)
书上只教了怎么得到平方与立方,要我编出一个偶数跟奇数的列表,望各位dalao指导

1‘获取奇数和偶数列表可以不用for循环的形式,使用一句列表表达式即可实现,方法如下,首先在按下开始菜单打开jupyter notebook:

2、在空白的python文件中输入代码,这里定义两个数组其中odd代表偶数,even代表奇数,列表中先用range遍历1到20的数,然后用if语句判断x除以2的值,若为1则是奇数2,若为0则为偶数,最后在打印结果一即可:

3、最后鼠标点击每个代码块并按下crtl+回车键运行,最后即可看到两个列表的结果。以上就是python得到1~20的奇数列表与偶数列表的方法,用列表表达式的方法不光代码简洁,而且运行速度也比较快:

参考技术A

1、创建一个过滤函数,用于判断数字是否为一个奇数

2、定义一个列表(可迭代对象)。


3、过滤出列表中的奇数,并返回一个可迭代序列

4、打印过滤得到的奇数列表。


5、保存文件,并执行,查看过滤得到的奇数列表的结果,偶数列表的方法同理。

参考技术B # coding=utf-8
# python2.7
ji, ou = [], []
for i in range(1, 21):
    if i % 2 == 0:
        ou.append(i)
    else:
        ji.append(i)
print(ji)
print(ou)

本回答被提问者和网友采纳
参考技术C odd_number=[g*2-1 for g in range(1,11)] 参考技术D for i in range(10,20,1):
prinr(i)
#最后可以用1或者-1,前者为正序,后者为反。直接输入即可不用新建window

在算法复杂度比线性更好的列表中查找第一个偶数

我的列表首先包含奇数元素,然后是偶数,所以奇数元素首先出现在列表中,然后是偶数元素。例如:

list = [5,99,3,7,111,13,4,24,4,8]

因此,偶数元素从数字4的奇数元素开始。这样做很简单,但是具有线性复杂度,但是必须具有更高的复杂度,因此想到二进制搜索,但是我不知道如何在这种情况下实现它。感谢帮助。

答案

由于这些值已经组织好,所以只取集合的中间值(数组,列表),然后检查它是偶数还是奇数。

甚至吗?然后,第一个偶数值位于集合的前半部分,您可以丢弃后半部分,也可以舍弃当前的后半部分。

奇怪吗?然后第一个偶数值还没有出现,丢弃前半部分,将第二个保留为新集合,并继续进行直到找到为止。

一些视觉指南:https://www.freecodecamp.org/news/binary-search-in-python-visual-introduction/

另一答案

您可以分割列表并找到索引i,以使索引i处的元素为偶数,而前一个元素为奇数。

def first_idx_even(l):
    """Return the index of the first even element."""
    lo, hi = 0, len(l)
    while lo < hi:
        mid = (lo+hi)//2
        # mid equal 0 or sequence odd - even
        if not mid or (l[mid] + l[mid-1]) % 2 == 1:
            return mid
        # sequence even - even
        elif l[mid] % 2 == 0 and l[mid-1] % 2 == 0: 
            hi = mid
        # sequence odd - odd
        else:
            lo = mid+1



>>> first_idx_even([1,2,2,4,24,4,8])
1
>>> first_idx_even([5,99,3,7,111,13,4,24,4,8])
6
>>> first_idx_even([2,22])
0
>>> first_idx_even([21,3])
None

以上是关于python如何得到1~20的奇数列表与偶数列表的主要内容,如果未能解决你的问题,请参考以下文章

算法异或 偶数数组中找到一个唯一奇数

c语言如何判断奇偶数?

宏实现奇数偶数位交换及offsetof

如何一次处理列表的所有项目? [复制]

python 如何生成 2 1 4 3 6 5 8 7。。。的指定长度的序列?

基础编程题之奇数位(偶数位)都是奇数(偶数)