1
0

152_controlflow.py 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173
  1. # if tests
  2. flag = False
  3. name = 'luren'
  4. if name == 'python':
  5. flag = True
  6. else:
  7. flag
  8. assert flag == False
  9. num = 9
  10. flag = 0
  11. if num >= 0 and num <= 10:
  12. flag = 1
  13. else:
  14. flag
  15. assert flag == 1
  16. num = 10
  17. flag = 0
  18. if num < 0 or num > 10:
  19. flag = 1
  20. else:
  21. flag
  22. assert flag == 0
  23. num = 5
  24. result = 0
  25. if num == 3:
  26. result = num
  27. elif num == 2:
  28. result = num
  29. elif num == 1:
  30. result = num
  31. elif num < 0:
  32. result = num
  33. else:
  34. result = num
  35. assert result == 5
  36. # for tests
  37. k = 0
  38. for i in range(2, 1000):
  39. if i % 2 == 0:
  40. k += 1
  41. assert k ==499
  42. k = 0
  43. for x in range(100):
  44. if x<2:
  45. continue
  46. flag = True
  47. for i in range(2,x):
  48. if x%i == 0:
  49. flag = False
  50. break
  51. if flag:
  52. k += 1
  53. assert k == 25
  54. #while tests
  55. count = 0
  56. while (count < 1000):
  57. count = count + 1
  58. assert count == 1000
  59. # ternary operator
  60. d = 1 if 2 > 1 else 2
  61. assert d == 1
  62. d = 1 if 2 < 1 else 2
  63. assert d == 2
  64. t = 0
  65. for i in range(5):
  66. if True and 1:
  67. break
  68. t = 1
  69. assert t == 0
  70. for i in range(5):
  71. break
  72. else:
  73. assert False
  74. for i in range(5):
  75. if i==3:
  76. break
  77. else:
  78. assert False
  79. flag = False
  80. for i in range(5):
  81. if i==6:
  82. break
  83. else:
  84. flag = True
  85. assert flag is True
  86. while True:
  87. break
  88. else:
  89. assert False
  90. flag = False
  91. while False:
  92. assert False
  93. else:
  94. flag = True
  95. assert flag is True
  96. x = 1
  97. while 0:
  98. while True:
  99. break
  100. else:
  101. x = 2
  102. assert x == 2
  103. if x == 2:
  104. while 0:
  105. pass
  106. else:
  107. x = 3
  108. assert x == 2
  109. # match case
  110. case, _1 = 1, 2
  111. assert case == 1 and _1 == 2
  112. match (404 * 1):
  113. case 200:
  114. assert False
  115. case 404:
  116. assert True
  117. case _: assert False
  118. match (555 * 1):
  119. case 200:
  120. assert False
  121. case 404: assert False
  122. case _:
  123. assert True
  124. match (555 * 1):
  125. case 200:
  126. assert False
  127. case 404:
  128. assert False
  129. # no default case
  130. def f(case):
  131. match case:
  132. case 200:
  133. return True
  134. case 404:
  135. return False
  136. case _:
  137. return False
  138. assert f(200) == True
  139. # extras
  140. t = 0
  141. for i in range(5):
  142. try:
  143. break
  144. except:
  145. pass
  146. t = 1
  147. assert t == 0