插入字符串中间的python
我是python新手,我有一本书,可以到处玩,所以请善待我。主要是我一直在玩ASCII艺术 我想做的是在一些文本中隐藏一些艺术。假设我有一个字符串打印输出“word”,我想做的是写一个函数,帮助我在这个词的中间插入一个字符,不管这个词有多长,它总是把我的艺术字符放在这个词的中间。所以我的输出是 “沃德”。 到目前为止,我从以下几点开始:插入字符串中间的python,python,string,insert,Python,String,Insert,我是python新手,我有一本书,可以到处玩,所以请善待我。主要是我一直在玩ASCII艺术 我想做的是在一些文本中隐藏一些艺术。假设我有一个字符串打印输出“word”,我想做的是写一个函数,帮助我在这个词的中间插入一个字符,不管这个词有多长,它总是把我的艺术字符放在这个词的中间。所以我的输出是 “沃德”。 到目前为止,我从以下几点开始: def dashinsert(str): return str[:2] + '-' + str[2:] 我知道这并不是一个接近它需要的地方,我只是一个
def dashinsert(str):
return str[:2] + '-' + str[2:]
我知道这并不是一个接近它需要的地方,我只是一个初学者,但是任何方向都是值得欣赏的,我也不确定我是否做得对
我的目标是从中学习,然后在文字的不同位置插入随机字符,使文字成为艺术。例如,我键入一个段落,艺术将作为一个功能插入。现在我只是想把这个插入部分取下来
def insert_string(org_string, string, pos=None):
# default position middle of org_string
if pos is None:
pos = len(org_string) / 2
return org_string[:pos] + string + org_string[pos:]
if __name__ == "__main__":
new_string = insert_string("world", "-")
print new_string
输出
wo-rd
整数除法使用双斜杠
def dashinsert(str):
midPoint = len(str)//2
return str[:midPoint] + '-' + str[midPoint:]
你有一个好的开始!我对Python有点生疏,但是您可以尝试添加一个position参数来改变字符串中插入破折号的位置(现在,它硬编码为position 2:
def dashinsert(str, position):
length = len(str)
if (position > length or position < 0):
return str
return str[:position] + '-' + str[position:]
然后,您可以使用更高级的方法,使用**kwargs和*args来改变传递到函数中的参数。下面是关于这两个概念的一个好例子。可能重复的
def characterinsert(str, position, insertion):
length = len(str)
if (position > length or position < 0):
return str
return str[:position] + insertion + str[position:]
import random
def dashinsert(str, insertion):
length = len(str)
position = random.randint(0,length)
return str[:position] + insertion + str[position:]