dryy8 发表于 2020-9-19 10:09:04

Python 列表

大佬们我想用i,i作为r切片的首尾,并且用"".join连接并输出,但是一直没法得到正确的的结果
()要的是 tc, ac, cg)
求指教:

r = ['a', 'g', 't', 'c', 't', 'g', 'a', 'c', 't', 'c', 'g', 'a','a']
i = [, , ]

for n in i:
    a = n
    b = n
   
    d = "".join(r[(print(f"{a}")):(print(f"{b+1}"))])
    print(d)

现在结果:
4
3
agtctgactcgaa
8
7
agtctgactcgaa
12
11
agtctgactcgaa

sunrise085 发表于 2020-9-19 11:05:21

d = "".join(r[(print(f"{a}")):(print(f"{b+1}"))])
这句话有问题
为什么在里面print呢,这样相当于
d = "".join(r[:])
因为print的返回值是None,所以
r[(print(f"{a}")):(print(f"{b+1}"))]
#实际上是
r
#也就是
r[:]
应该直接写
d = "".join(r)

dryy8 发表于 2020-9-19 12:11:39

我就是试了
d = "".join(r)
print(d)
结果:
d = "".join(r)
TypeError: list indices must be integers or slices, not tuple
没有结果才试了很多其他方法.我就是想问问有啥办法能把r表示出来,得到结果['t','c'],['a','c'],['c','g']
页: [1]
查看完整版本: Python 列表