衡山 22/1/4 后端

文章探讨了Python和Go两种编程语言中的运算符,包括赋值、逻辑和位运算符,并特别关注了短路逻辑在两种语言中的差异。此外,还介绍了程序控制结构如while循环以及使用随机数的应用示例,如猜数字游戏。
摘要由CSDN通过智能技术生成

运算符

加减乘除取余取幂
在这里插入图片描述

go
在这里插入图片描述
在这里插入图片描述
如何取出各个位数的数字
在这里插入图片描述
三位数
在这里插入图片描述
在这里插入图片描述
五位数
在这里插入图片描述
一个n位数,求其各个位数
在这里插入图片描述

赋值运算符

在这里插入图片描述
运算符的连用:python可连用,go不可连用
在这里插入图片描述
在这里插入图片描述

逻辑运算符python短路

与或非 没有优先级
在这里插入图片描述
and
短路运算
在这里插入图片描述
左边为假右边不会计算
在这里插入图片描述
左边为真,会继续进行运算,但是除数不能为0,右边报错

or
短路运算
在这里插入图片描述
左边为真,右边不用计算
左边为假,右边继续计算

当and和or。not一起计算时候
在这里插入图片描述
从左到右计算 没有优先级

在这里插入图片描述

函数 print 输出到屏幕
在这里插入图片描述

在这里插入图片描述
只短路and 不短路or

如果为真,执行a,如果为假,执行b
在这里插入图片描述

go短路

告诉我们除数为0,可以执行右边
在这里插入图片描述

其他运算符

在这里插入图片描述
在这里插入图片描述
测试对象实例is /not is
在这里插入图片描述

位运算符 没有自增自减

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
经过三次异或 可以交换
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

小练习
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

只能是y%2!=0 or y%2==1

在这里插入图片描述
在这里插入图片描述

go补充

自增
取地址
在这里插入图片描述

程序控制

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
输出三角形和九九乘法表篇
for i in range(1,9):
print(’ '(9-i),’ '*i)

for i in range(1, 10):
for j in range(1, i+1):
print(f’{j}x{i}={i*j}\t’, end=‘’)
print()

while

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
x = input(“输入:\n”)

year = x[6:10]
month = x[10:12]
day = x[12:14]
old = 2023 - eval(year)
sex = x[16:18]
s = eval(sex)
if(s%2==0):
sex1 =“男”
else:
sex1 =“女”
print(“输出:\n”, “你出生于”, year, “年”, month, “月”, day, “日”)
print(“你今年”, old, “岁”)
print(“你的性别为”, sex1)

作业在这里插入图片描述

在这里插入图片描述

import random
# 产生一个随机数,将它转换为二进制数,作为亮灯情况
# 100000000000 -- 111111111111
liangdeng = random.randint(2048, 4095)
print("亮灯情况:{0:b}".format(liangdeng))
num2 = "{0:b}".format(liangdeng)
# 随机设置弹珠位置,在0-11里面任选一个作为弹珠位置,切片处理取出来
i = random.choice([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11])
print("你打中了第%d 个灯:" % (i+1))
print("弹珠打中的情况", num2[i])
if int(num2[i]) == 1:
    print("游戏结果:true")
if int(num2[i]) == 0:
     print("游戏结果:false")

在这里插入图片描述
猜对了,奖励100金豆

import random

print("数字猜大小游戏!\n玩法:三个骰子相加,这个数字可以公布给现场所有人,但是猜的人除外。")
result1 = random.randint(1, 7)
result2 = random.randint(1, 7)
result3 = random.randint(1, 7)
g = result1+result2+result3

num = 0
score = 500
while True:
    num += 1
    if g > 18:
        print("\n游戏结束!您没有在规定次数内猜出数字!本次得分:0 !")
        break
    message = input("\n请输入您猜出的数字(范围1~100),退出游戏请输入 q :")
    if message == '':
        print("\n请输入您猜出的数字!")
    else:
        if message == "q":
            print("\n游戏已退出!")
            break
        if int(message) == g:
            score = score+100
            print("\n[第%s次] 恭喜您!猜对啦!本次得分:%s !" % (num, 100))
            print("分数为%s" % (score))
            break
        elif int(message) > g:
            score = score-100
            print("\n[第%s次] 猜错啦!您猜的数字为 %s,有点大,继续加油哦!" % (num, message))
            print("分数为%s," % (score))
            
        else:
            score = score - 100
            print("\n[第%s次] 猜错啦!您猜的数字为 %s,有点小,继续加油哦!" % (num, message))
            print("分数为%s" % (score))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值