PIXEL-TAPE 发表于 2023-3-6 19:28:59

求助,最后的奇数不会输出

我认为是range的范围问题,但我不会解决


o=[]
q=input("enter:")
w=int(len(q)/2)
u=0
for i in range(w):
    t=q
    o.append(t)
#取第二个起,隔一个取
    t=q
    o.append(t)
#取第一个起,隔一个取
    u+=2
    print(o)

isdkz 发表于 2023-3-6 19:31:10

o=[]
q=input("enter:")
w=int(len(q)/2)
u=0
for i in range(w+1):             # 这里加一看看
    t=q
    o.append(t)
#取第二个起,隔一个取
    t=q
    o.append(t)
#取第一个起,隔一个取
    u+=2
    print(o)

PIXEL-TAPE 发表于 2023-3-6 19:34:22

isdkz 发表于 2023-3-6 19:31


不行,报错了
raceback (most recent call last):
File "D:\+.py", line 6, in <module>
    t=q
IndexError: string index out of range

Weabu 发表于 2023-3-6 19:57:17

这个代码是要干嘛的
为啥前面要加字符串

PIXEL-TAPE 发表于 2023-3-6 20:04:17

Weabu 发表于 2023-3-6 19:57
这个代码是要干嘛的
为啥前面要加字符串

一种加密方法

chinajz 发表于 2023-3-6 20:38:32

本帖最后由 chinajz 于 2023-3-6 21:42 编辑

要这样的运行结果:
enter:123456789
['2', '1', '4', '3', '6', '5', '8', '7', '9']
#coding:gbk
o=[]
q=input("enter:")
w=int(len(q)/2)
u=0
for i in range(w):
    t=q
    o.append(t)
#取第二个起,隔一个取
    t=q
    o.append(t)
#取第一个起,隔一个取
    u+=2
if len(q)/2-w:
    o.append(q)   
print(o)

PIXEL-TAPE 发表于 2023-3-6 20:40:07

chinajz 发表于 2023-3-6 20:38
运行未发现问题:

你倒是加上9啊,我说了是奇数问题

isdkz 发表于 2023-3-6 21:26:51

本帖最后由 isdkz 于 2023-3-7 21:55 编辑

PIXEL-TAPE 发表于 2023-3-6 20:40
你倒是加上9啊,我说了是奇数问题

你是想要这种效果?

代码修改如下:
o=[]
q=input("enter:")
l = len(q)
w=int(l/2)
u=0
for i in range(w):
    t=q
    o.append(t)
#取第二个起,隔一个取
    t=q
    o.append(t)
#取第一个起,隔一个取
    u+=2
    print(o)

if l % 2:
    o.append(q[-1])
    print(o)

效果:
enter:123456789
['2', '1']
['2', '1', '4', '3']
['2', '1', '4', '3', '6', '5']
['2', '1', '4', '3', '6', '5', '8', '7']
['2', '1', '4', '3', '6', '5', '8', '7', '9']

PIXEL-TAPE 发表于 2023-3-6 21:57:08

isdkz 发表于 2023-3-6 21:26
你是想要这种效果?

代码修改如下:


{:10_266:}突然大无语,我之前也是像你这么写的。但我的还是出问题。

PIXEL-TAPE 发表于 2023-3-6 23:02:25

谢谢大佬们
页: [1]
查看完整版本: 求助,最后的奇数不会输出