fc5igm 发表于 2021-5-28 16:42:23

关于08讲课后作业动动手抛硬币代码的疑问

小甲鱼所给的代码
import random

counts = int(input("请输入抛硬币的次数:"))
i = 0

print("开始抛硬币实验:")
while i < counts:
    num = random.randint(1, 10)

    if num % 2:
      print("正面", end=" ")
    else:
      print("反面", end=" ")

    i += 1

这里if的True值判定,用了num%2,请问这个%2是什么意思?

灰晨 发表于 2021-5-28 16:44:00

除于2取余数

逃兵 发表于 2021-5-28 16:52:03

%是取模符号,用来求余数
通常用%2来判断整型是奇数还是偶数
num%2 == 0 则为偶数
num%2 == 1 则为奇数

Peteryo01223 发表于 2021-5-28 17:24:39

本帖最后由 Peteryo01223 于 2021-5-28 17:27 编辑

if num % 2:
以上,是个简略写法,熟练的人会这么写。完整写法是:
if num % 2 !=0:
即:如果 num 不能被二整除,或者说,如果此条件 “为真”。

fc5igm 发表于 2021-5-28 17:55:30

灰晨 发表于 2021-5-28 16:44
除于2取余数

谢谢

fc5igm 发表于 2021-5-28 17:56:34

逃兵 发表于 2021-5-28 16:52
%是取模符号,用来求余数
通常用%2来判断整型是奇数还是偶数
num%2 == 0 则为偶数


十分感谢

fc5igm 发表于 2021-5-28 17:57:44

Peteryo01223 发表于 2021-5-28 17:24
以上,是个简略写法,熟练的人会这么写。完整写法是:

即:如果 num 不能被二整除,或者说,如果此条 ...

感谢

fc5igm 发表于 2021-5-28 18:02:46

逃兵 发表于 2021-5-28 16:52
%是取模符号,用来求余数
通常用%2来判断整型是奇数还是偶数
num%2 == 0 则为偶数


再问一下,请问第十五行代码
    i += 1
是什么意思?

灰晨 发表于 2021-5-28 18:26:43

fc5igm 发表于 2021-5-28 18:02
再问一下,请问第十五行代码
    i += 1
是什么意思?

简写,完整写法:i = i + 1

fc5igm 发表于 2021-5-28 18:38:39

灰晨 发表于 2021-5-28 18:26
简写,完整写法:i = i + 1

感觉好怪啊。。
页: [1]
查看完整版本: 关于08讲课后作业动动手抛硬币代码的疑问