在 python 中为多个字符串粘贴 0 类函数
paste0 like function in python for multiple strings
我想实现的很简单,在R中我可以做到
paste0("https\",1:10,"whatever",11:20)
,
如何在 Python 中执行此操作?我发现了一些东西 ,但只允许 :
paste0("https\",1:10)
.
任何人都知道如何解决这个问题,这一定很容易做到,但我找不到方法。
根据您提供的 link, 这应该可行:
["https://" + str(i) + "whatever" + str(i) for i in xrange(1,11)]
给出以下输出:
['https://1whatever1', 'https://2whatever2', 'https://3whatever3',
'https://4whatever4', 'https://5whatever5', 'https://6whatever6',
'https://7whatever7', 'https://8whatever8',
'https://9whatever9', 'https://10whatever10']
编辑:
这应该适用于 paste0("https\",1:10,"whatever",11:20)
paste_list = []
for i in xrange(1,11):
# replace {0} with the value of i
first_half = "https://{0}".format(i)
for x in xrange(1,21):
# replace {0} with the value of x
second_half = "whatever{0}".format(x)
# Concatenate the two halves of the string and append them to paste_list[]
paste_list.append(first_half+second_half)
print paste_list
@Jason,我建议您使用以下两种方法中的任何一种来完成此任务。
✓ 通过使用 list comprehension 和 zip() 函数创建文本列表。
Note: To print \
on screen, use escape sequence \
. See List of escape sequences and their use.
Please comment if you think this answer doesn't satisfy your problem. I will change the answer based on your inputs and expected outputs.
texts = ["https\\" + str(num1) + "whatever" + str(num2) for num1, num2 in zip(range(1,10),range(11, 20))]
for text in texts:
print(text)
"""
https\1whatever11
https\2whatever12
https\3whatever13
https\4whatever14
https\5whatever15
https\6whatever16
https\7whatever17
https\8whatever18
https\9whatever19
"""
✓ 通过定义一个实现上述逻辑的简单函数 paste0() 到 return 文本列表。
import json
def paste0(string1, range1, strring2, range2):
texts = [string1 + str(num1) + string2 + str(num2) for num1, num2 in zip(range1, range2)]
return texts
texts = paste0("https\\", range(1, 10), "whatever", range(11, 20))
# Pretty printing the obtained list of texts using Jon module
print(json.dumps(texts, indent=4))
"""
[
"https\\1whatever11",
"https\\2whatever12",
"https\\3whatever13",
"https\\4whatever14",
"https\\5whatever15",
"https\\6whatever16",
"https\\7whatever17",
"https\\8whatever18",
"https\\9whatever19"
]
"""
我想实现的很简单,在R中我可以做到
paste0("https\",1:10,"whatever",11:20)
,
如何在 Python 中执行此操作?我发现了一些东西
paste0("https\",1:10)
.
任何人都知道如何解决这个问题,这一定很容易做到,但我找不到方法。
根据您提供的 link, 这应该可行:
["https://" + str(i) + "whatever" + str(i) for i in xrange(1,11)]
给出以下输出:
['https://1whatever1', 'https://2whatever2', 'https://3whatever3',
'https://4whatever4', 'https://5whatever5', 'https://6whatever6',
'https://7whatever7', 'https://8whatever8',
'https://9whatever9', 'https://10whatever10']
编辑:
这应该适用于 paste0("https\",1:10,"whatever",11:20)
paste_list = []
for i in xrange(1,11):
# replace {0} with the value of i
first_half = "https://{0}".format(i)
for x in xrange(1,21):
# replace {0} with the value of x
second_half = "whatever{0}".format(x)
# Concatenate the two halves of the string and append them to paste_list[]
paste_list.append(first_half+second_half)
print paste_list
@Jason,我建议您使用以下两种方法中的任何一种来完成此任务。
✓ 通过使用 list comprehension 和 zip() 函数创建文本列表。
Note: To print
\
on screen, use escape sequence\
. See List of escape sequences and their use.Please comment if you think this answer doesn't satisfy your problem. I will change the answer based on your inputs and expected outputs.
texts = ["https\\" + str(num1) + "whatever" + str(num2) for num1, num2 in zip(range(1,10),range(11, 20))]
for text in texts:
print(text)
"""
https\1whatever11
https\2whatever12
https\3whatever13
https\4whatever14
https\5whatever15
https\6whatever16
https\7whatever17
https\8whatever18
https\9whatever19
"""
✓ 通过定义一个实现上述逻辑的简单函数 paste0() 到 return 文本列表。
import json
def paste0(string1, range1, strring2, range2):
texts = [string1 + str(num1) + string2 + str(num2) for num1, num2 in zip(range1, range2)]
return texts
texts = paste0("https\\", range(1, 10), "whatever", range(11, 20))
# Pretty printing the obtained list of texts using Jon module
print(json.dumps(texts, indent=4))
"""
[
"https\\1whatever11",
"https\\2whatever12",
"https\\3whatever13",
"https\\4whatever14",
"https\\5whatever15",
"https\\6whatever16",
"https\\7whatever17",
"https\\8whatever18",
"https\\9whatever19"
]
"""