gpt4 book ai didi

python - 如何将 user_input 转换为列表?

转载 作者:行者123 更新时间:2023-11-28 21:43:12 26 4
gpt4 key购买 nike

我需要一些帮助,我确信当这个问题得到解答时,它会非常简单,我没有想到。但这里是:

我正在尝试获取此代码:

forename = [input("Forename: ")]
forenameFirstLetter = forename[0]

email = str(forenameFirstLetter) + "." + surname + "@TreeRoad.net"
print ("This is the students email address:" + email)

打印:

J.Smith@TreeRoad.net

相反,我收到此错误:TypeError: Can't convert 'list' object to str implicitly

那么我如何将名字放入列表中,以便我可以打印第一个字母,然后返回到一个字符串中,以便我可以将它添加到其他字符串中?

最佳答案

你做错了什么:

您尝试做的是创建一个列表,其唯一元素是字符串。当它是一个列表时,forename[0] 将获取该列表的第一个(也是唯一一个)元素(就像直接从 input() 中获取的字符串一样) ),但不是来自字符串。


如何解决:

不需要将其转换为列表,切片符号允许使用:

forename = input("Forename: ")
forenameFirstLetter = forename[0]

所以,现在以后不需要再转换成字符串了:

email = forenameFirstLetter + "." + surname + "@TreeRoad.net"
print ("This is the students email address:" + email)

为了更好地理解字符串切片:

 0 | 1 | 2 | 3 | (index)
f | o | o | . | (string)

当你切片一个字符串时:

s = "foo."

s[0] #is "f" because it corresponds with the index 0
s[1] #is "o"
s[2] #is "o"
s[0:2] #takes the substring from the index 0 to 2. In this example: "foo"
s[:1] #From the start of the string until reaching the index 1. "fo"
s[2:] #From 2 to the end, "o."
s[::2] #This is the step, here we are taking a substring with even index.
s[1:2:3] #You can put all three together

所以语法是string[start:end:step]

在列表中的使用非常相似。

关于python - 如何将 user_input 转换为列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42596567/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com