我只是想不通如何轻松地在python中做到这一点:
myArray = ["this ","is ","a ","test.","this ","is ","another ","test."]
现在我希望输出为
print(myArray[0:3]) -> "this is a test"
print(myArray[4:7]) -> "this is another test"
python中是否有一个功能,使它无需在myArray中的for word中遍历整个数组即可...
我得到的是一个循环索引,该索引仅告诉我应该“打印”哪个单词。
我更喜欢python“ exclusive”变体,该变体又短又简单,最好是一个衬板,它应该需要尽可能少的内存(即使数千次尝试也要快速)
答案 0 :(得分:5)
您可以尝试join(),希望这是您正在寻找的解决方案
myArray = ["this ","is ","a ","test.","this ","is ","another ","test."]
print(' '.join(myArray[:4]))
print(' '.join(myArray[4:]))
答案 1 :(得分:3)
似乎您真正想要的是join一起列出单词列表中的一些子列表。
>>> myArray = ["this ","is ","a ","test.","this ","is ","another ","test."]
>>> print(''.join(myArray[0:4]))
this is a test.
>>> print(''.join(myArray[4:8]))
this is another test.
答案 2 :(得分:2)
我想您必须使其成为myArray [0:4]并加入函数...
print("".join(myArray[0:4]))
print("".join(myArray[4:8]))
答案 3 :(得分:2)
您需要使用字符串方法join()
。此方法适用于分隔符。例如:
"".join(myArray[0:4])
将输出:
'this is a test.'
答案 4 :(得分:1)
你很近。
对于python 2.7:
print " ".join(test[0:3])
对于python 3.x:
print(*test[0:3])
答案 5 :(得分:0)
只需使用join()
first="".join(myArray[0:3])
second="".join(myArray[4:7])
答案 6 :(得分:0)
如朋友所言,您可以在python中使用join
:
print("".join(myArray[x:y]))
会将您所说的联接(这里""
)放在元素之间作为分隔符,并以 string 返回。
一种好方法是从数组中删除结尾空间并执行以下操作:
print(" ".join(myArray[x:y]))
答案 7 :(得分:0)
print(''.join(myArray[:4])) -> "this is a test"
print(''.join(myArray[4:])) -> "this is another test"
答案 8 :(得分:0)
正如其他人所说,您可以始终使用join:
//generate 10 letters
myArray = [chr(letter) for letter in range(97,107)]
//return letters from 0 to 5
"".join(myArray)[0:5]
但是,我不明白为什么您不能使用这种格式
print[0:5]
就效率而言,后一种选择更好,并且与前一种一样Python化。 当您“加入”数组时,您将对其进行隐式插入,而当最终显示必要的元素时,您将再次进行迭代。