小编Mar*_* II的帖子

<a> vs <button> vs <div> vs <input type ='button">

我看到很多帖子都是这样的:"我想在HTML中使用按钮时,针对我的具体情况而言,这是一个特定的事情.

如果可以的话,我想在一个帖子中找到专业人士,这里:

在HTML中创建按钮时,会导致以下情况:

  • <a> 是最好的答案?
  • <button> 是最好的答案?
  • <div> 是最好的答案?
  • <input type='button'> 是最好的答案?

html html5

16
推荐指数
2
解决办法
6779
查看次数

拒绝负数作为 Python 中的异常

我正在尝试运行一个带有数字的基本提示,然后在其上运行一个递归函数。

任何负数都会导致递归错误,因为函数无法处理它们。

现在,我已经通过 Python 了解到这种情况需要“尝试/除外”模型。这是我想出的:

try: 
  choice = int(input('Enter a number: '))
  INSERT RECURSIVE FUNCTION HERE
except RecursionError as err:
  print('Error: ', str(err))
Run Code Online (Sandbox Code Playgroud)

这个异常不起作用,因为它仍然用红线显示整个递归过程,我的异常只替换了最后一行。我知道我可以通过逻辑轻松解决这个问题,例如:

if choice < 0:
  print("Error: Bro, We don't take no Negative Numbers around here.")
Run Code Online (Sandbox Code Playgroud)

然而,我被告知我们通常希望避免在 Python 中“通过逻辑解决错误”,而是通过“尝试/除外”模型工作。

我该怎么做才能通过“try/except”模型而不是“if/else”来拒绝负数?

如果你能帮助我理解一种对 ValueError 做出反应的方法,那将是另一个很大的帮助。

python exception negative-number

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

断言没有Python中的回溯

我正在尝试简化以下内容:

if x < 0:
  print('we don't do negative numbers')
else: 
  NORMAL CODE HERE
Run Code Online (Sandbox Code Playgroud)

我最近了解了这个assert命令,并且钦佩它将我之前的行简化为:

assert x > 0, 'errorText'
NORMAL CODE HERE
Run Code Online (Sandbox Code Playgroud)

不过,我不希望错误给予追溯.我只想要像if/else那样的单行.

有没有办法让assertionError像异常那样返回单行,或者我是否真的需要继续运行if/else的处处?

python logic assert

2
推荐指数
1
解决办法
1271
查看次数

.replace不能在for循环中工作吗?

所以我试图做一个".replace"循环,但是发生了一些神秘的事情.

var cell = "r1c1";

for (i = 0; i <= 4; i++){
  cell = cell.replace(cell[3],i+1);
Run Code Online (Sandbox Code Playgroud)

我的预期产量:

cell = "r1c1"
cell = "r1c2"
cell = "r1c3"
cell = "r1c4"
cell = "r1c5"
Run Code Online (Sandbox Code Playgroud)

实际输出:

cell = "r1c2"
cell = "r2c1"
cell = "r2c3"
cell = "r2c4"
cell = "r2c5"
Run Code Online (Sandbox Code Playgroud)

如您所见,它在第二次迭代时运行正常的EXCEPT.世界上我做错了什么?

javascript

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

为什么对于长度为k的字符串,我需要char [k + 1]而不是char [k]?

所以我有一套简单的代码:

#include <stdio.h>

int main()
{
  char x[3] = "ABC"; // (*)
  puts(x);
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

它返回一个奇怪的输出:

ABC¬ a

使用从上面的回答这个问题,我发现,当我改变x[3]x[4]一切都正常运行.

但为什么?为什么我会得到一个奇怪的输出x[3],为什么x[4]还好?

c output

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

充分利用switch语句

我的Java教科书问我有关以下错误的信息:

switch (score)
        {
            case (score > 90):
                grade = 'A';
                break;
            case (score > 80):
                grade = 'B';
                break;
            default:
                grade = 'C';
        }
Run Code Online (Sandbox Code Playgroud)

我已经知道错误在哪里:

  • Switch语句不是为比较而构建的(score > 90); 那是if/else语句.

但是,这让我疑惑:怎么可能一个switch语句有效地占到整数的范围是多少?

我能想到的最明显的例子如下,但我发现它相当蛮力:

switch (score)
    {
        case 90: case 91: case 92: case 94: case 95:
        case 96: case 97: case 98: case 99: case 100:
            grade = 'A';
            break;
        case 80: case 81: case 82: case 84: case 85:
        case 86: case 87: case 88: case …
Run Code Online (Sandbox Code Playgroud)

java switch-statement

-1
推荐指数
1
解决办法
1185
查看次数