-4

我生成了零列表。

num=raw_input

list=[0]*int(num)

我希望 list2 中的每个第一个和第二个数字都添加 +1。

对于 list3 中的每个第三个数字,我想在其中添加 +1。

我期望以下输出。

清单2

10101010101010

清单3

10010010010010

我尝试使用以下代码:

list=raw_input 
list=[0]*int(num) 
num2=list(num)/2 
num3=int(num)/3 

但是如果用在除 12 之外的任何数字上,那它就会中断,例如:

list1 = [1,0]*int(num2) 
list2 = [1,0,0]*int(num3)

先感谢您。

4

2 回答 2

2

这个怎么样:

for i in xrange(0, len(list)):
    if i % 2 == 0:
        list[i] += 1

这会修改 list 的每个第二个元素,以便添加 1。您可以通过将i % 2更改为i % 3轻松修改此设置以更改每三分之一。

一个简短的旁注:此页面并非用于为您解决问题。正如 Abhinav Sarkar 所问:你尝试过什么?学习编程与其说是关于实际解决方案,不如说是关于到达那里的道路。

我看到你是新来的,但是,从一开始就做好这件事是件好事。在提出问题时——尤其是当它们像你的问题一样简单时——列出尝试过的问题。

于 2012-10-17T17:57:10.633 回答
-1

最简单的方法是:

num=raw_input

list=[0]*int(num)
list2 = []
list3 = []

for x in xrange(len(list)):
    if x % 2 == 0:
        list2.append(list[x] + 1)
    else:
        list2.append(list[x])

for x in xrange(len(list)):
    if x % 3 == 0:
        list3.append(list[x] + 1)
    else:
        list3.append(list[x])
于 2012-10-17T17:57:23.650 回答