小编use*_*225的帖子

如何引发ValueError?

我有这个代码,它找到字符串中特定字符的最大索引,但是我希望它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)

python string

105
推荐指数
4
解决办法
19万
查看次数

递归因子函数

如何将这两个函数组合到一个递归函数中以获得此结果:

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)

python recursion factorial

10
推荐指数
4
解决办法
7万
查看次数

递归函数

我正在尝试编写一个递归函数,它取一个整数,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)

顺便说一下这不是作业:)

python recursion

0
推荐指数
1
解决办法
1040
查看次数

第n个单词在文本中

如何在文本中找到第n个单词.

例:

my_txt("hello to you all" , 3)

all
Run Code Online (Sandbox Code Playgroud)

我不想使用任何内置功能......这不是作业:D

python string

0
推荐指数
2
解决办法
3万
查看次数

标签 统计

python ×4

recursion ×2

string ×2

factorial ×1