森林半岛 2022-03-20 20:25 采纳率: 81.8%
浏览 27
已结题

关于#python#的问题:我想着先创建一个1循环的列表,然后再创建一个0循环的列表

问题遇到的现象和发生背景

jupyter notebook用for循环创建一个1101001000100001列表,最后两个1之间有10个0

我的解答思路和尝试过的方法

我想着先创建一个1循环的列表,然后再创建一个0循环的列表,然后第二个列表插入第一个,但是写不出来,而且代码肯定有些冗余

我想要达到的结果

想问一下各位,怎么用简单易懂的代码写出来,因为自己刚学,不是很懂

  • 写回答

1条回答 默认 最新

  • 被窝探险家_ 2022-03-20 22:43
    关注

    如果是每个值都属于一个元素存放在列表中的话使用以下代码就可以实现

    numlist = []
    i=1
    while i<=11:
        numlist.append(1)
        for k in range(1,i):
            numlist.append(0)
        i += 1
    numlist.append(1)
    print(numlist)
    

    输出结果为

    img

    如果想总和成一个字符串有两种方式:

    1. 可以在上面的基础上把print(numlist)改成print("".join(numlist))
    2. 使用以下代码
    strs = ""
    i=1
    while i<=11:
        strs += "1"
        for k in range(1,i):
            strs += "0"
        i += 1
    strs += "1"
    print(strs)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 3月29日
  • 已采纳回答 3月21日
  • 创建了问题 3月20日