Linux云计算训练营笔记day18(Python)

news2025/6/3 22:07:53

# 猜数字游戏: 程序生产一个 1-100的随机数
#  让用户重复去猜测, 直到猜对为止
#  如果用户输入的数字 大于 随机生成的数字 提示 大了
#  如果用户输入的数字 小于 随机生产的数字 提示 小了
#  否则 猜对了 break
#  增加需求  最多猜6次,如果没有猜对,提示 你失败了, 如果猜对了,显示总共猜了几次猜对
# import random # 导包
# # 产生随机数 1-100
# r = random.randint(1,100)
# count = 0
# while True:
#     count += 1
#     user = int(input("(猜数字)请输入1-100的数字:"))
#     if user > r:
#         print("大了")
#     elif user < r:
#         print("小了")
#     else:
#         print("恭喜你,猜对了,总共猜了",count,"次")
#         play_again = input("还要在玩一次吗?(y/n):")
#         if play_again == "y":
#             count = 0
#             r = random.randint(1,100)
#             print("好的,我又想好了一个新数字,请继续猜吧!")
#         else:
#             print("谢谢参与,猜数字游戏结束!")
#             break
# else:  #如果循环条件不满足,才执行else
#     print("你失败了")

# BMI 体重(千克) 除以 身高 的平方 得出来的数字
# 中国参考标准:  BMI 身体质量指数
# 体重过低  BMI < 18.5
# 正常      18.5 ~ 24(不包含)
# 超重      24 ~ 28(不包含)
# I度肥胖   28 ~ 30(不包含)
# II度肥胖  30 ~ 40(不包含)
# III度肥胖 40以上
# count = 0
# while count < 3:
#     count += 1
#     height = float(input("请输入身高(m):")) # 1.74
#     weight = float(input("请输入体重(kg):")) # 72
#     bmi = weight / height ** 2
#     if bmi < 18.5:
#         print("体重过低")
#     elif bmi < 24:
#         print("正常")
#     elif bmi < 28:
#         print("超重")
#     elif bmi < 30:
#         print("I度肥胖")
#     elif bmi < 40:
#         print("II度肥胖")
#     else:
#         print("III度肥胖")

# 优先级从高到底 ( )  >  **   >   * / % //     >     + -

# 在终端输入两个数字, 输出两个数字中间的数
#  比如 3 , 8     4 5 6 7    while
# begin = int(input("请输入第一个数字:"))
# end = int(input("请输入第二个数字:"))
# while begin < end -1:
#     begin += 1
#     print(begin)
# #  比如 9 , 5     8 7 6      while
# while begin > end + 1:
#     begin -= 1
#     print(begin)

# 一张纸的厚度是0.01毫米, 请计算对折多少次可以超过珠穆朗玛峰 8844.43米 的高度
# zhi = 0.01 / 1000
# count = 0
# while zhi < 8844.43:
#     zhi *= 2
#     count += 1
#     print("第",count,"次高度是:",zhi)
# print("需要对折",count,"次")

# while循环 根据条件重复执行   涉及到次数
# for循环: 遍历可迭代对象中的元素
# 可迭代对象: 依次获取数据元素的对象, 容器  字符串

# for 变量 in 可迭代对象:
#     语句块

# for item in "我叫龚里": #字符串
#     print(item)

# range 整数生成器
# range(6) # 结束值(不包含)
# for item in range(6):
#     print(item) # 0 1 2 3 4 5
#
# #range(1,5) # 起始值  结束值(不包含)
# for item in range(1,5):
#     print(item) # 1 2 3 4
#
# # range(1,8,2) #起始值  结束值(不包含)  间隔(步长)
# for item in range(1,8,2):
#     print(item) # 1 3 5 7
#
# # 使用for循环打印   0 1 2
# sum = 0
# for item in range(3):
#     sum = sum +item
#     print(item)
# print(sum) #3
# 使用for循环打印   5 6 7
# for item in range(5,8):
#     print(item)
# # 使用for循环打印   8 7 6 5 4 3
# for item in range(8, 2, -1):
#     print(item)
# # 使用for循环打印   -1 -2 -3 -4 -5
# for item in range(-1, -6, -1):
#     print(item)

# 让用户从终端输入一个四位数 1234 输出每位相加之和 1+2+3+4
# str1 = input("请输入一个四位数:")
# sum = 0
# for item in str1:
#     sum = sum + int(item)
# print(sum)

# 1.累加 1+2+3+..+98+99+100 的和
# sum = 0
# for item in range(1,101):
#     sum += item
# print("1-100=>",sum)  #5050
# 2.累加 1到100 之间能被5整除的数字
# sum = 0
# for item in range(1,101):
#     if item % 5 == 0:
#         sum += item
# print("1-100被5整除的和:=>",sum) #1050
# 3.累加 1到100 之间偶数的和
# sum = 0
# for item in range(1,101):
#     if item % 2 == 1 :
#         continue  # 不满足条件跳过此次循环,进入下一轮循环
#     sum += item
# print("1-100偶数的和=>",sum) # 2550

# 4.累加10-50之间 个位不是 2 / 5 / 9的整除
# sum = 0
# for item in range(10, 51):
#     ge = item % 10
#     if ge == 2 or ge == 5 or ge == 9:
#         continue
#     sum += item #等价于 sum = sum + item
# print("sum=", sum) #   sum = 866

# 随机加法考试
# 随机产生两个数字(1-10),     random.randint(1,10)
# 提示用户输入相加的结果 (格式: 7 + 3 = )
# 如果回答正确加10分,回答错误不得分
# 总共10道题 100分, 最后输出总得分
# import random
# score = 0
# for i in range(10):
#     n1 = random.randint(10,99)
#     n2 = random.randint(10,99)
#     message = str(n1) + "+" + str(n2) + "="
#     user_input = int(input(message))
#     if n1 + n2 == user_input:
#         print("恭喜你,答对了")
#         score += 10
#     else:
#         print("很遗憾,这题做错了")
# print("总分是=", score)

# 字符串  由一系列的字符组成的不可变序列容器,存储的是字符的编码值     "a7"
# 字符: 单个的数字, 文字 , 符号  'a'  '7'
# 字节byte: 计算机最小存储单位 1byte = 8bit
# 字符集: 存储字符与二进制的对应关系
# 编码: 将字符转换为对应的二进制的过程
# 解码: 将二进制转换为对应的字符的过程
# 编码方式:
#     ASCII编码   包含英文  数字等字符,每个字符是1个字节
#     GBK编码  兼容ASCII 包含21003个中文, 英文是一个字节  汉字是2个字节
#     UTF-8   英文是一个字节,汉字是3个字节

# ord(字符) 函数  返回字符的unicode码
# chr(整数) 函数  返回整数对应的字符串

# 字符 => 整数
print(ord('a')) #97
print(ord('A')) #65    => 32

# 整数 => 字符
print(chr(97))  #a
print(chr(100)) #d

# 在终端输入一个字符串,循环打印每个字符的编码值
# str1 = input("请输入文字:")
# for item in str1:
#     print(ord(item)) #龚 40858  里 37324    中20013 国22269

# 生成26个英文字母
for i in range(ord('a'), ord('z')+1):
    print(chr(i))

# 字符串的拼接
# 方法一:使用百分号(%)格式化字符串
# 把变量拼接到占位符的地方  %s 字符串   %d数字    %f 小数
name = "Alice"
age = 25
height = 1.75
print("我的名字叫 %s ,我现在 %d 岁, 我的身高 %.2f" % (name, age, height))
# 方法二:使用字符串的format()方法
print("我的名字叫 {} ,我现在 {} 岁".format(name, age))
# 方法三
print(f"我的名字叫 {name} ,我现在 {age} 岁")
# 方法四
print("我的名字叫",name,",我现在",age,"岁")

# 字符串拼接    字符串是不可变的
name = "悟空"
name += "大圣"
print(name) #悟空大圣
# 重复
name *= 2
print(name) #悟空大圣悟空大圣
# 比较
str1 = "abc"
str2 = "axy"
print(str1 > str2) #False b < x 依次比较两个容器中的元素,一旦不同返回结果
# 成员运算
str3 = "我叫龚里"
print("龚里" in str3) #True

# 索引 index  定位字符串中的元素    字符串[index]
# 正向索引:  index从0开始,第二个为1,最后一个为长度 -1   lend(s)-1
# 反向索引:  index从-1开始,第二个-2..第一个 -长度      -len(s)

name = "我的名字叫老龚"  #index: 0 1 2 3 4 5 6
print(name[2])  #名
print(name[-1]) #龚
print(name[1])  #的
# print(name[7])  #报错  string index out of range 下标越界
# print(name[-8]) #报错  string index out of range 下标越界
print(len(name)) #7 长度
print(name[len(name)-1])  #龚
print(name[len(name)//2]) #字


# 切片   从字符串中找多个元素
# 字符串[:结束索引]  字符串[开始索引:结束索引]     字符串[开始索引:结束索引:步长]
# 不包含结束索引   步长 默认是1
name = "我的名字叫老龚"
print(name[5:7]) # 老龚
print(name[:5])  # 我的名字叫
print(name[1:7:2]) #的字老
print(name[::1]) # 我的名字叫老龚
print(name[::-1]) #龚老叫字名的我
print(name[1:1]) #空
print(name[-2:2]) #空
print(name[-2:2:-1]) #老叫字

# 判断一个字符串是否是回文   正向 == 反向
# 回文: 上海自来水来自海上
str1 = "上海自来水来自海上"
if str1 == str1[::-1]:
    print("是回文")
else:
    print("不是回文")

# 在终端获取一个整数,作为矩形的边长,打印矩形
# 4            6
#  ****        ******
#  *  *        *    *
#  *  *        *    *
#  ****        *    *
#              *    *
#              ******
n = int(input("请输入一个整数:"))
print("*" * n)
for item in range(n-2):
    print("*"+" "*(n-2)+"*")
print("*" * n)

# 打印三角形
for i in range(1,n+1):
    print("*"*i)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2395663.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Git深入解析功能逻辑与核心业务场景流程

一、Git核心功能逻辑架构 #mermaid-svg-9tj1iCr99u6QenJM {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-9tj1iCr99u6QenJM .error-icon{fill:#552222;}#mermaid-svg-9tj1iCr99u6QenJM .error-text{fill:#552222;st…

LINUX528 重定向

2>&1 我的理解&#xff1a; 2>&1&#xff0c;2stderr错误输出&#xff0c;1stdout输出&#xff0c;stderr一般和stdout是分别输出&#xff08;管道符只传递stdout&#xff0c;据元宝&#xff0c;stderr默认输出到终端&#xff1b;如果重定向符不进行2显示重定向&…

研华工控机安装Windows10系统,适用UEFI(GPT)格式安装

主要硬件 主板&#xff1a;AIMB-787 、CPU&#xff1a;i5-6500 U盘启动工具&#xff1a;通过网盘分享的文件&#xff1a;rufus-3.20.zip 链接: https://pan.baidu.com/s/1YlFfd-_EhFHCG4sEHBQ8dQ?pwdQT12 提取码: QT12 Win10 22H2 Pro 纯净版系统&#xff1a;通过网盘分享…

1、树莓派更换软件下载源

树莓派官方系统raspbian自带的是国外的软件源&#xff0c;在国内使用经常会遇到无法下载软件的问题。 以下是把raspbian系统&#xff08;buster版本&#xff09;的下载源改为阿里云软件源的方法。 1、修改sources.list文件 sudo nano /etc/apt/sources.list 将初始化中的代…

历年中山大学计算机保研上机真题

历年中山大学计算机保研上机真题 2025中山大学计算机保研上机真题 2024中山大学计算机保研上机真题 2023中山大学计算机保研上机真题 在线测评链接&#xff1a;https://pgcode.cn/school 不连续1的子串 题目描述 给定一个数字 n n n&#xff0c;输出长度为 n n n 的 01…

Python----目标检测(《SSD: Single Shot MultiBox Detector》论文和SSD的原理与网络结构)

一、SSD&#xff1a;单次多框检测器 1.1、基本信息 标题&#xff1a;SSD: Single Shot MultiBox Detector 作者&#xff1a;Wei Liu (UNC Chapel Hill), Dragomir Anguelov (Zoox Inc.), Dumitru Erhan, Christian Szegedy (Google Inc.), Scott Reed (University of Michiga…

springboot集成websocket给前端推送消息

一般通常情况下&#xff0c;我们都是前端主动朝后端发送请求&#xff0c;那么有没有可能&#xff0c;后端主动给前端推送消息呢&#xff1f;这时候就可以借助websocket来实现。下面给出一个简单的实现样例。 首先创建一个websocketDemo工程&#xff0c;该工程的整体结构如下&a…

0527漏洞原理:XSS笔记

理论知识 01 前端基础知识 1.1 HTML基础 定义&#xff1a;HTML&#xff08;超文本标记语言&#xff09;用于描述网页结构。标准结构&#xff1a; 内嵌脚本&#xff1a; <script>JavaScript代码</script>1.4 JavaScript弹窗函数 函数描述alert("文本&quo…

智能制造之精读——RPA制造行业常见场景【附全文阅读】

RPA 在制造行业应用广泛&#xff0c;为企业带来显著价值&#xff0c;是极具潜力的智能化解决方案。它能节省成本&#xff0c;降低人力与管理成本&#xff1b;提升运营效率&#xff0c;减少人机交互损耗&#xff1b;提高质量&#xff0c;保障流程准确性&#xff1b;还能增强合规…

深入剖析 Docker 容器化原理与实战应用,开启技术新征程!

文章目录 前言一、为什么 是Docker &#xff1f;二、Docker 容器化原理分析2.1 镜像&#xff08;Image&#xff09;2.2 容器&#xff08;Container&#xff09;2.3 仓库&#xff08;Registry&#xff09; 三、Docker 容器化实践3.1 Docker安装3.2 创建一个 Docker 镜像3.3 运行…

计算机网络(4)——网络层

1.概述 1.1 网络层服务 (1) 网络层为不同主机(Host)之间提供了一种逻辑通信机制 (2)每个主机和路由器都运行网络层协议 发送方&#xff1a;将来自传输层的消息封装到数据报(datagram)中接收方&#xff1a;向传输层交付数据段(segment) 1.2 网络层核心功能 路由选择(routing…

ESP32基础知识1:项目工程建立和烧录

ESP32基础知识1&#xff1a;项目工程建立和烧录 一、本文内容与前置知识点1. 本文内容2. 前置知识点 二、新建工程1. 工程配置2. 依照模板建立项目 三、硬件烧录1. 硬件准备2. 烧录器和ESP32连接3. 电脑端设置4. 烧录成功演示 四、参考文献 一、本文内容与前置知识点 1. 本文内…

allWebPlugin中间件VLC专用版之录像功能介绍

背景 VLC控件原有接口是不支持录像的&#xff0c;且libVLC提供的接口库&#xff0c;不能获取录像文件完整名称&#xff08;VLC-3.0.11 录制直播时有的无法保存视频的解决方法 - 1CM - 博客园&#xff09;&#xff1b;因此&#xff0c;非常的不友好。为了能够彻底解决这个问题&a…

Vim 支持多种编程语言编辑器

软件简介 Vim是Vi编辑器的增强版&#xff0c;它提供了更多的功能和快捷键。Vim是一款自由软件&#xff0c;它是由Bram Moolenaar在1991年创建的。Vim支持多种编程语言&#xff0c;包括C、C、Java、Python、Perl等等。它是一款轻量级的编辑器&#xff0c;可以快速打开和编辑大型…

解决 IDEA 在运行时中文乱码问题

直接说解决办法 编译 IDEA 所在目录的启动的 .vmoptions 文件&#xff0c;添加以下JVM 参数即可 -Dfile.encodingUTF-8如下图所示&#xff0c;Help > Edit Custom VM Options&#xff0c;随后在编辑框中添加-Dfile.encodingUTF-8 的 JVM 参数

Diffusion Planner:扩散模型重塑自动驾驶路径规划(ICLR‘25)

1. 概述 2025年2月14日&#xff0c;清华大学AIR智能产业研究院联合毫末智行、中科院自动化所和香港中文大学团队&#xff0c;在ICLR 2025会议上发布了Diffusion Planner——一种创新性的基于Diffusion Transformer的自动驾驶规划模型架构。该系统联合建模周车运动预测与自车行…

华为OD机试真题——阿里巴巴找黄金宝箱 IV(2025A卷:200分)Java/python/JavaScript/C++/C语言/GO六种最佳实现

2025 A卷 200分 题型 本文涵盖详细的问题分析、解题思路、代码实现、代码详解、测试用例以及综合分析; 并提供Java、python、JavaScript、C++、C语言、GO六种语言的最佳实现方式! 2025华为OD真题目录+全流程解析/备考攻略/经验分享 华为OD机试真题《阿里巴巴找黄金宝箱 IV》:…

数据结构:时间复杂度(Time Complexity)和空间复杂度(Space Complexity)

目录 什么是时间复杂度&#xff1f; 如何表示时间复杂度&#xff1f; 为什么需要时间复杂度&#xff1f; 用几个例子理解 怎么分析代码的时间复杂度&#xff1f; 什么是空间复杂度&#xff1f; 举例理解 什么是时间复杂度&#xff1f; 时间复杂度是用来衡量一个算法“…

SSL/TLS 协议详解:安全通信的基石

一、概述 SSL&#xff08;Secure Sockets Layer&#xff09; 及其继任者 TLS&#xff08;Transport Layer Security&#xff09; 是位于 传输层&#xff08;TCP&#xff09;与应用层之间 的加密协议&#xff0c;用于在网络通信中实现 机密性、身份认证和数据完整性。 核心目标…

设计模式——外观设计模式(结构型)

摘要 本文介绍了外观设计模式&#xff0c;它是一种结构型设计模式&#xff0c;通过引入一个外观类来封装复杂子系统的调用细节&#xff0c;对外提供简单统一的接口。文中通过生活类比、关键角色介绍、使用场景分析以及结构说明等方面对这一模式进行了全面阐述&#xff0c;还涉…