gpt4 book ai didi

python - 根据位置多次打印字符串元素

转载 作者:太空宇宙 更新时间:2023-11-04 04:46:33 25 4
gpt4 key购买 nike

我试图单独打印每个元素,这很好,但也会根据位置重复每个元素,例如。 "abcd"= A-Bb-Ccc-Dddd 等

所以我的问题是让 print 语句根据它们在字符串中的位置打印 x 次。我尝试了一些使用 len 和 range 的组合,但我经常遇到错误,因为我使用的是字符串而不是整数。

我应该在这里使用 len 和 range 吗?如果你们没有发布完成的代码,我更希望基本上只是如何解决该特定问题(如果可能的话),这样我仍然可以自己解决问题。

user_string = input()

def accum(s):
for letter in s:
pos = s[0]
print(letter.title())
pos = s[0 + 1]

accum(user_string)

最佳答案

您可以枚举可迭代对象(列表、字符串、范围、dictkeys...)——它提供索引和值:

text = "abcdef"
for idx,c in enumerate(text):
print(idx,c)

输出:

(0, 'a')
(1, 'b')
(2, 'c')
(3, 'd')
(4, 'e')
(5, 'f')

您可以使用它多次打印某些内容。打印命令有 2 个可选参数:

print("Bla","blubb", sep=" --->", end=" Kawumm\n")

输出:

Bla --->blubb Kawumm

指定输出之间和输出末尾打印的内容 - 您可以指定 end="" - 这样您就可以在同一行上继续打印。

独库:


编辑:

user_string = input() 

def accum(s):
t = [] # list to store stuff into
for count, letter in enumerate(s):
total = letter.upper() + letter * (count) # 1st as Upper, rest as is
t.append(total) # add to list
print(*t, sep="-") # the * "unpacks" the list into its parts

accum(user_string)

解包:

print( [1,2,3,4,5], sep=" +++ ")  # its just 1 value to print, no sep needed
print(*[1,2,3,4,5], sep=" +++ ") # 5 values to print, sep needed

输出:

[1, 2, 3, 4, 5] 
1 +++ 2 +++ 3 +++ 4 +++ 5

关于python - 根据位置多次打印字符串元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49436433/

25 4 0
文章推荐: javascript - 使用 JavaScript 启动 CSS-Transition
文章推荐: c - 使用 mpi 并行排序
文章推荐: javascript - 强制 列为固定宽度;防止自动展开