我有这个代码,它找到字符串中特定字符的最大索引,但是我希望它ValueError在字符串中没有出现指定字符时引发.
所以像这样:
contains('bababa', 'k')
Run Code Online (Sandbox Code Playgroud)
会导致:
→ ValueError: could not find k in bababa
我怎样才能做到这一点?
这是我的函数的当前代码:
def contains(string,char):
list = []
for i in range(0,len(string)):
if string[i] == char:
list = list + [i]
return list[-1]
Run Code Online (Sandbox Code Playgroud) 如何将这两个函数组合到一个递归函数中以获得此结果:
factorial(6)
1! = 1
2! = 2
3! = 6
4! = 24
5! = 120
6! = 720
Run Code Online (Sandbox Code Playgroud)
这些是代码
def factorial( n ):
if n <1: # base case
return 1
else:
return n * factorial( n - 1 ) # recursive call
def fact(n):
for i in range(1, n+1 ):
print "%2d! = %d" % ( i, factorial( i ) )
fact(6)
1! = 1
2! = 2
3! = 6
4! = 24
5! = 120 …Run Code Online (Sandbox Code Playgroud) 我正在尝试编写一个递归函数,它取一个整数,n,并将所有偶数给零,然后将每个数加到n ......
这就是我到目前为止所拥有的
def kaboom(n):
if n>=0:
if n%2==0:
print n,
print kaboom(n-2),
else:
n=n-1
print n,
print kaboom(n-2),
print n,
n=n+1
return n
Run Code Online (Sandbox Code Playgroud)
输出是
KABOOM(5)
4 2 0 None 0 1 2 3 4
5
Run Code Online (Sandbox Code Playgroud)
KABOOM(4)
4 2 0 None 0 1 2 3 4
Run Code Online (Sandbox Code Playgroud)
五
但它应该是
KABOOM(5)
4 2 0 1 2 3 4 5
Run Code Online (Sandbox Code Playgroud)
和
KABOOM(4)
4 2 0 1 2 3 4
Run Code Online (Sandbox Code Playgroud)
顺便说一下这不是作业:)
如何在文本中找到第n个单词.
例:
my_txt("hello to you all" , 3)
all
Run Code Online (Sandbox Code Playgroud)
我不想使用任何内置功能......这不是作业:D