Python:获取列表中第一个字符串的第一个字符?

2024-04-23 11:36:40 发布

您现在位置:Python中文网/ 问答频道 /正文

在Python中,如何从列表中的第一个字符串获取第一个字符?

似乎我可以使用mylist[0][1:],但这并没有给我第一个字符。

>>> mylist = []
>>> mylist.append("asdf")
>>> mylist.append("jkl;")
>>> mylist[0][1:]
'sdf'

Tags: 字符串列表jkl字符sdfappendasdfmylist
3条回答

从0开始在python中编制索引。您编写了[1:]这在任何情况下都不会返回第一个字符-这将返回字符串的其余字符(第一个字符除外)。

如果您有以下结构:

mylist = ['base', 'sample', 'test']

并且要获取第一个字符串(项)的第一个字符:

myList[0][0]
>>> b

如果所有第一个字符:

[x[0] for x in myList]
>>> ['b', 's', 't']    

如果有文本:

text = 'base sample test'
text.split()[0][0]
>>> b

你几乎是对的。最简单的方法是

mylist[0][0]   # get the first character from the first item in the list

但是

mylist[0][:1]  # get up to the first character in the first item in the list

也会起作用的。

您希望在第一个字符(字符0)之后结束,而不是在第一个字符(字符0)之后开始,这就是您问题中的代码的含义。

获取裸python字符串的第一个字符:

>>> mystring = "hello"
>>> print(mystring[0])
h
>>> print(mystring[:1])
h
>>> print(mystring[3])
l
>>> print(mystring[-1])
o
>>> print(mystring[2:3])
l
>>> print(mystring[2:4])
ll

从python列表第一个位置的字符串中获取第一个字符:

>>> myarray = []
>>> myarray.append("blah")
>>> myarray[0][:1]
'b'
>>> myarray[0][-1]
'h'
>>> myarray[0][1:3]
'la'

很多人在这里被绊倒是因为他们混淆了Python列表对象的运算符和Numpy ndarray对象的运算符:

Numpy操作与python列表操作非常不同。

围绕着Python的“list-slicing,index,subsetting”和Numpy的“masking,slicing,subsetting,index,then Numpy's enhanced fancy indexing”这两个相互冲突的领域,展开你的头脑。

这两个视频为我澄清了一些事情:

“失去循环,使用NumPy进行快速数值计算”,PyCon 2015: https://youtu.be/EEUXKG97YRw?t=22m22s

Alexandre Chabot LeClerc的“NumPy初学者| SciPy 2016教程”: https://youtu.be/gtejJ3RCddE?t=1h24m54s

相关问题 更多 >