B1 · 第14集 · 4:42

Python条件语句入门

本集讲解Python中if和else条件语句的语法与缩进规则,通过成绩判断示例演示代码结构。

来源:jmbarbier / peertube.solidev.net · 许可:CC BY-SA 4.0

字幕

  1. Maintenant quand j'arrive ici,

    现在,当我来到这里时,

  2. je n'ai pas respecté cette condition,

    我没有遵守这个条件,

  3. je n'ai pas non plus respecté cette condition,

    也没有遵守这个条件,

  4. donc ça veut dire que quand j'arrive au alors ici,

    所以这意味着,当我到达这里时,

  5. ça veut dire que j'ai eu plus que 5.

    说明我的分数超过了5分。

  6. Plus que dix, mais moins de quinze.

    超过10分但不到15分。

  7. Donc en gros, une note comprise entre dix et quinze.

    总之,就是介于10到15之间的分数。

  8. Et puis dans tous les autres cas, alors quels sont les autres cas?

    那么其他所有情况呢?还有哪些情况?

  9. Tous les autres cas, c'est plus de 5, plus de 10, plus de 15.

    其他所有情况,就是超过5、超过10、超过15。

  10. D'accord, donc c'est de manière générale, si tu as plus de 15 en maths,

    好的,也就是说,总体而言,如果你数学考了15分以上,

  11. tu vas te couper les cheveux.

    你就要剪头发。

  12. Je vois pas le rapport, mais c'est pas grave.

    我看不出其中的联系,不过没关系。

  13. D'accord, voilà, donc on a toutes ces manières d'exprimer des conditions,

    好的,我们已经了解了这些表达条件的方式,

  14. voilà, donc. En Python, c'est exactement la même chose,

    在Python中也完全一样,

  15. sauf que c'est en anglais. Donc a égal 15, juste la condition de base.

    只是用英语写:a等于15,这是最基础的条件。

  16. If a est supérieur à cinq.

    如果a大于5,

  17. de quinze, pardon.

    抱歉,是大于15。

  18. On va le faire avec le premier exemple.

    我们用第一个例子来演示。

  19. Note égale une valeur, on va mettre 13.

    分数设为一个值,比如13。

  20. If A est supérieur note

    如果a大于分数,

  21. est supérieur à 15, print.

    且分数大于15,就输出。

  22. Tu gagnes une PS5.

    你赢了一台PS5。

  23. Alors comment est- ce que je viens d'écrire ça?

    那么,我刚才是怎么写的呢?

  24. Le si se transforme en if, c'est la traduction directement.

    法语的‘si’直接翻译成‘if’。

  25. Je n'ai pas mis de alors.

    我没有写‘alors’(那么)。

  26. Le alors, vous voyez qu'il n'y a pas de then ici,

    这里的‘那么’,您会发现此处并没有‘then’这个词,

  27. dans certains vieux langages il y a, mais il n'y a pas de alors.

    某些旧编程语言中确实有,但这里没有‘那么’。

  28. En fait, ce qui remplace le alors, c'est le deux points.

    实际上,取代‘那么’的,是冒号。

  29. Donc quand je suis arrivé à la fin de ma condition,

    所以当我写完条件判断后,

  30. j'ai écrit le deux points et le deux points veut dire alors.

    就写下冒号——这个冒号就表示‘那么’。

  31. Et ensuite, je suis passé à la ligne.

    接着,我换到下一行。

  32. Donc j'ai ici appuyé sur Entrée et quand j'appuie sur Entrée,

    因此我在这里按下了回车键;当我按下回车时,

  33. écoutez mon clavier.

    请听我的键盘声。

  34. Vous voyez que automatiquement mon éditeur me l'a décalé ici.

    您会看到,编辑器自动将这段代码向右缩进了。

  35. tout ce qui est dans le alors là ça pourrait être tu gagnes une ps cinq plus une

    所有属于‘那么’分支的内容——比如‘你赢了一台PS5’,

  36. ferrari plus un machin il peut y avoir plusieurs choses et

    再加一辆法拉利,再加别的东西……可以有多个操作,

  37. ben C'est tout ce qui va être exécuté dans mon programme dans le alors qui

    总之,所有这些将在满足该条件时执行的操作,

  38. correspond à cette condition, ce sera ce qui sera décalé.

    都会被统一缩进。

  39. d'un certain nombre de caractères, donc ça peut être 4, ça peut être 2,

    缩进量通常是若干个字符,可能是4个,也可能是2个,

  40. mais de manière générale, il faut rester homogène et par tradition,

    但一般要保持统一;按惯例,通常用4个空格。

  41. c'est 4. Donc tout ce qui sera décalé là- dedans, ça sera.

    因此,所有缩进在此处的内容,

  42. à l'intérieur de la condition.

    都属于该条件内部。

  43. Donc là, ici. Bravo.

    好了,到这里,恭喜!

  44. Tu gagnes une PS5, ça, ça sera exécuté uniquement si ma note est supérieure à 15.

    ‘你赢了一台PS5’这行代码,仅在分数高于15时才会执行。

  45. Maintenant, quand je vais revenir à la ligne ici, je fais un espace,

    现在,当我回到这一行并输入一个空格,

  46. un backspace supplémentaire,

    再按一次退格键,

  47. print. D'accord, ce truc- là est en dehors

    再输入‘print’——注意,这部分代码不在‘那么’分支内,

  48. de mon alors. Donc ça sera exécuté dans tous les cas,

    因此它会在任何情况下都执行,

  49. si ma note est supérieure à 15 ou qu'elle est inférieure à 15,

    无论分数是否高于15。

  50. d'accord? Là, j'ai terminé ma condition.

    好,我的条件语句到这里就结束了。

  51. Là, je rentre dans cette condition si la note est supérieure à 15.

    此时,如果分数高于15分,我就进入这个条件分支。

  52. Et là ici, je sors du bloc

    而这里,我退出该指令块。

  53. d'instructions qui est exécuté si la note est inférieure à 15.

    该指令块仅在分数低于15分时执行。

  54. Donc là, alors j'ai mis un exemple, note égale 13.

    因此,我举个例子:分数等于13。

  55. Cette note n'est pas supérieure à 15.

    这个分数并不高于15。

  56. Donc qu'est- ce qui va être affiché?

    那么,将显示什么内容?

  57. Uniquement les petits points.

    只有小圆点。

  58. Maintenant si je me mets 18 de moyenne en NSI,

    现在,如果我在信息科学课上得了18分,

  59. là dans ce cas- là, ma note est strictement supérieure à 15 et je rentre à

    在这种情况下,我的分数严格大于15,于是进入条件判断内部。

  60. l'intérieur de mes conditions.

    也就是进入我的条件语句内部。

  61. Et je vais afficher mon print bravo et mon print tu gagnes une PS5.

    接着会输出‘太棒了!’和‘你赢了一台PS5!’这两条打印信息。

  62. D'accord, donc si je résume, le si, il devient if, le alors,

    好的,总结一下:法语的‘si’对应英文的‘if’;‘alors’(那么)不写出来,

  63. il s'écrit pas, mais il se remplace par un deux points et avec ce qu'on appelle une

    而是用一个冒号代替,并配合所谓的‘缩进’。

  64. indentation. L'indentation, c'est un décalage par rapport à la marge de gauche,

    所谓缩进,就是相对于左页边向右空出一定距离,

  65. et tout ce qui est indenté de la même manière fait partie de ce alors.

    所有相同缩进的内容都属于这个‘那么’所管辖的范围。

  66. Dès que j'enlève la notation, je reviens en dehors du alors et ça s'exécute tout le

    一旦取消缩进,就回到‘那么’之外,这部分代码总会执行。

  67. temps. Voilà la première

    这就是最基础的条件语句。

  68. condition de base.

    基础条件语句。

  69. Si quelque chose, alors tu fais quelque chose.

    如果满足某个条件,就执行某项操作。

  70. Maintenant si je veux avoir la deuxième, si tu as quelque chose,

    现在,如果想表达第二种情况——‘如果你有某样东西,否则……’

  71. alors sinon. Là on va traduire

    那么我们来翻译‘sinon’(否则)。

  72. le if de la même manière, donc note

    ‘if’的翻译方式与之前相同,例如设分数为12。

  73. est égal à 12 par exemple.

    比如分数等于12。

  74. Si note supérieure à dix, ça c'est si le premier.

    如果分数高于10分,这是第一个‘if’。

  75. Donc je traduis si tu as plus de la moyenne.

    也就是说,如果你的成绩超过及格线。