了解如何使用索引

时间:2016-11-18 12:26:51

标签: python indexing

寻求更好地说明如何实现以下说明。

# loop while i is less than the length of name and the i-th character is not a space.
# return the part of name up to but not including the i-th character to the caller.
def get_first_name(name):
    i = 0
    while i < len(name) and '' in str(i):
        i += 1
    return name 

3 个答案:

答案 0 :(得分:0)

Python中的字符串是序列,您可以使用name[i]之类的符号进行索引。因此,您可以逐个字符循环字符串,并与空格字符' '保持比较。每次敲击不是空格的字母时,请将其附加到临时字符串中。一旦你碰到一个空格,停止循环,你的临时字符串的值将代表他们的名字。

def get_first_name(name):
    first = ''
    i = 0
    while i < len(name) and name[i] != ' ':
        first += name[i]  # append this letter
        i += 1            # increment the index
    return first

实施例

>>> get_first_name('John Jones')
'John'

答案 1 :(得分:0)

我没有实现你的功能,只是解释逻辑,因为我相信这是你的一部分练习。

您的情况可以写成:

name = "Hello World"
i = 0

# len(name): will return the length of `name` string
# name[i] != " ": will check that item at `i`th position is not blank space

while i < len(name) and name[i] != " ":
    print name[:i+1]  # print string from start to the `i`th position
    i += 1

将打印:

H
He
Hel
Hell
Hello

现在,我想你知道如何将这个逻辑放在你的函数中以及返回哪个值;)

答案 2 :(得分:0)

感谢您的建议,使用它们我已经能够使我的代码符合我要求的规范。

function getDiContainer()