4 回答
TA贡献1712条经验 获得超3个赞
由于您不能使用方法和循环,因此可以使用递归来完成。
def r(a, b=''):
if len(a) == 0 or a[0] == ' ':
return b
return r(a[1:], b + a[0])
s = 'Hello World'
print(r(s))
会打印Hello。
TA贡献2065条经验 获得超13个赞
找到第一个空格字符的索引,然后使用字符串切片:
s = "Hello World"
print(s[:s.index(' ')])
没有循环,但确实使用了.index()方法......
也可以尝试递归函数:
s = "Hello World"
def first_word(string):
if string[0] == ' ':
return ''
else:
new_string = string[0] + first_word(string[1:])
return new_string
print(first_word(s))
TA贡献1803条经验 获得超3个赞
这个递归与 MacieK 的非常相似:
(编辑以允许非空格字分隔符)
def hello(s):
delims = ' ,-'
if s == '' or s[:1] in delims: return
print(s[:1], end='')
hello(s[1:])
hello('Hello, World')
添加回答
举报