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

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

看来我可以使用mylist[0][1:]但是这不会给我第一个字符。

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

你几乎是正确的。 最简单的方法是

 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 

也会工作。

你想在第一个字符(字符为零)之后结束,而不是在第一个字符(字符为零)之后开始 ,这就是你的问题中代码的意思。

在Python中索引从0开始。你写了[1:]在任何情况下都不会返回第一个字符 – 这会返回给你一个string的第一个字符。

如果你有以下结构:

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

并想获得第一个string(项目)的拳头字符:

 myList[0][0] >>> b 

如果所有的前字符:

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

如果你有一个文本:

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

获取裸露的Pythonstring的第一个字符:

 >>> 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列表的第一个位置从string获取第一个字符:

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

很多人因为混合了Python列表对象和Numpy ndarray对象的运算符而被绊倒了:

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

把你的头围绕着Python的“列表切片,索引,子集”这两个冲突的世界,然后是Numpy的“掩码,切片,子集,索引,然后numpy的增强的花式索引”。

这两个video为我清除了一些事情:

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

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

试试mylist[0][0] 。 这应该返回第一个字符。