当前位置: 首页 > news >正文

Python | 刷题日记

1.海伦公式求三角形的面积

area=根号下(p(p-a)(p-b)(p-c))

p是周长的一半

2.随机生成一个整数

import random
x=random.randint(0,9)#随机生成0到9之间的一个数
y=eval(input("please input:"))
if x==y:print("bingo")
elif x<y:print("da le")
elif x>y:print("xiao le")
print(f"随机数是{x}")    

生成多个整数(有范围)

import random
n=input("请输入n:")
n=eval(n)
x=[random.randint(0,100) for i in range(n)]#生成0-100范围内的n个数字
print(x)
even=0
odd=0
for item in x:if item%2==0:even+=1else:odd+=1
print(f'odd num:{odd},even num:{even}')        

3.输出字符金字塔

for i in range(1,6):for j in range(1,-2*i+11):print(" ",end="")s=chr(64+i)    for k in range(1,2*i):print(s,end="")print("\n")    

chr是什么:s=chr(64+i)

在编程中,chr 是一个常见的函数(通常在像 Python 这样的语言中),用于将一个整数(通常是一个 ASCII 或 Unicode 码点)转换为其对应的字符。

在你给出的代码片段 s = chr(64 + i) 中:

  • chr 是该函数的名字。
  • 64 是 ASCII 表中 @ 字符的码点。
  • i 是一个变量,它的值在代码的其他部分被定义或赋值。

当 i 被赋予某个整数值时,64 + i 会计算出一个新的整数,这个整数是 ASCII 表中 @ 字符之后第 i 个字符的码点。然后,chr 函数将这个整数转换为其对应的字符,并将结果赋值给变量 s

例如:

  • 如果 i = 0,则 s 会被赋值为 '@'(因为 64 + 0 = 64,这是 '@' 的 ASCII 码点)。
  • 如果 i = 1,则 s 会被赋值为 'A'(因为 64 + 1 = 65,这是 'A' 的 ASCII 码点)。
  • 如果 i = 2,则 s 会被赋值为 'B',依此类推。

注意:如果 i 的值导致 64 + i 超出了 ASCII 表的范围(即,大于 127),那么结果字符将是一个扩展 ASCII 字符或 Unicode 字符(取决于你的系统和语言实现)。但在大多数 ASCII 环境中,只有 0 到 127 的值是有定义的。

4.利用sum求解列表的和

x=list(eval(input("请输入几个数字:")))
print("这几个数字的和是{}".format(sum(x)))

 5.追加元素

fi=[1,1]
n=2
while len(fi)<20:s=fi[n-1]+fi[n-2]fi.append(s)#错误写法:fi[n]=fi[n-1]+fi[n-2]#列表追加元素是appendn+=1
print(fi)    

6.计算n个值

n=eval(input("请输入:"))
print(sum(int("6"*i) for i in range(1,n+1)))
#计算 6+6+666+...

7.利用string里面的ascii_uppercase和ascii_lowercase来计算大写和小写字母的和

import string 
s=input("请输入一个字符:")
upper=string.ascii_uppercase
lower=string.ascii_lowercase
ans=0
for item in s:if item in upper:ans+=ord(item)-65+1if item in lower:ans+=ord(item)-97+1 
print(ans)

A:65

a:97

ord 求ASCII值

chr 求ASCII对应的符号

ord的用法

8.如何实现按照每行10个元素输出元素

for i in range(0,50,10):
    print(list1[i:i+10])

import random as r
list1=[r.randint(0,10) for i in range(50)]
#如何实现按照每行10个元素输出元素
for i in range(0,50,10):print(list1[i:i+10])
for i in range(10):print(f'{i}出现的次数:{list1.count(i)}')

9.怎样去除重复的元素,而且不影响原来的顺序

思路:创造两个列表

import random as r
list1=[r.randint(0,9) for i in range(30)]
print(list1)
list2=[]
for i in list1:if i not in list2:list2.append((i))
print(list2)

10.巧用sorted

 

import random
list1=[random.randint(10,99) for i in range(20)]
print(list1)
list1=sorted(list1[:10])+sorted(list1[10:],reverse=True)
print(list1)

 

 对偶数下标进行降序,奇数下标不变

import random
list1=[random.randint(10,99) for i in range(20)]
print(list1)
list1[::2]=sorted(list1[::2],reverse=True)
#0 2 4
print(list1)

11.fromkeys

字典 fromkeys() 方法用于创建一个新的字典,并以可迭代对象中的元素分别作为字典中的键,且所有键对应同一个值,默认为None。

 

	dict .fromkeys(iterable, [value = None])
  • 使用给定的一些键创建一个新的字典,所有键对象的值为None.
>>> {}.fromkeys(["name", "age"])
{'name': None, 'age': None}
  • 当然,如果不想使用None来作为默认的值,也可以给定其他值.
>>> {}.fromkeys(["Jack", "Chow","Fook"], 0)			# 注意这里只能附一个值
{'Jack': 0, 'Chow': 0, 'Fook': 0}

 

  • 如果想赋上对于的value值的话,可以单独在对其赋值,不可append()
>>> {}.fromkeys(["Jack", "Chow","Fook"], 0)
{'Jack': 0, 'Chow': 0, 'Fook': 0}
>>> a =  {}.fromkeys(["Jack", "Chow","Fook"], 0)
>>> a["Jack"] = "Jessie007"
>>> a
{'Jack': 'Jessie007', 'Chow': 0, 'Fook': 0}

 切记不要append


>>> a =  {}.fromkeys(["Jack", "Chow","Fook"], [])
>>> a['Jack'].append(9527)
>>> a
{'Jack': [9527], 'Chow': [9527], 'Fook': [9527]}

输入1行英文句子,统计各个单词出现的次数

text = input("请输入句子").lower().split()
dicttext={}.fromkeys(text,0)
for x in text:dicttext[x]+=1
print(dicttext)


 

text = input("请输入句子").lower().split()
  • input("请输入句子"): 从用户那里获取一个字符串输入,该字符串代表一个句子。
  • .lower(): 将句子中的所有大写字母转换为小写字母。这样做是为了确保在后续的词频统计中,例如"Hello"和"hello"被视为同一个单词。
  • .split(): 默认情况下,这个方法会在任何空白(空格、制表符、换行符等)处分割字符串,返回一个单词列表。所以,如果输入是"Hello, world!",经过.lower().split()后,text的值会是一个列表['hello,', 'world!']。注意,这里的逗号和感叹号仍然被视为单词的一部分,因为它们之间有空白分隔。
dicttext = {}.fromkeys(text, 0)
  • {}: 创建一个空字典。
  • .fromkeys(text, 0): 这是一个类方法,用于从text列表中创建字典的键,并将所有键的值初始化为0。因此,如果text['hello,', 'world!'],则dicttext会是{'hello,': 0, 'world!': 0}。这里,字典的键是句子中的单词(或更确切地说,是空白分隔的字符串片段),值都是0,表示这些单词的初始出现次数。
for x in text:
dicttext[x] += 1
  • 这是一个循环,遍历text列表中的每个单词(或字符串片段)。
  • 对于每个单词x,它增加dicttext中对应键的值。由于之前我们已经将所有键的值初始化为0,所以这里实际上是统计每个单词在句子中出现的次数。
print(dicttext)
  • 这行代码打印出dicttext字典,即每个单词(或字符串片段)及其在句子中的出现次数。

注意:如果你的目标是统计真正的单词(即,不考虑标点符号),你可能需要在调用.split()之前或之后进一步处理text列表,例如使用正则表达式或简单的字符串替换来移除标点符号。

12.计算天数

import  calendar as c
year=int(input("请输入年份:"))
month=int(input("请输入月份:"))
day=int(input("请输入天数:"))
sum=0
da={"1":31,"2":28,"3":31,"4":30,"5":31,"6":30,"7":31,"8":31,"9":30,"10":31,"11":30,"12":31}
if c.isleap(year):da["2"] = 29if int(month)>1:for i in range(1,int(month)):sum+=da[str(i)]sum+=day
else:sum+=day
print(sum)

 

相关文章:

Python | 刷题日记

1.海伦公式求三角形的面积 area根号下&#xff08;p(p-a)(p-b&#xff09;(p-c)) p是周长的一半 2.随机生成一个整数 import random xrandom.randint(0,9)#随机生成0到9之间的一个数 yeval(input("please input:")) if xy:print("bingo") elif x<y:pri…...

“JS逆向 | Python爬虫 | 动态cookie如何破~”

案例目标 目标网址:aHR0cHMlM0EvL21hdGNoLnl1YW5yZW54dWUuY29tL21hdGNoLzI= 本题目标:提取全部 5 页发布日热度的值,计算所有值的加和,并提交答案 常规 JavaScript 逆向思路 JavaScript 逆向工程通常分为以下三步: 寻找入口:逆向工程的核心在于找出加密参数的生成方式。…...

十.数据链路层——MAC/ARP

IP和数据链路层之间的关系 引言 在IP一节中&#xff0c;我们说IP层路由(数据转发)的过程&#xff0c;就像我们跳一跳游戏一样&#xff0c;从一个节点&#xff0c;转发到另一个节点 它提供了一种将数据从A主机跨网络发到B主机的能力 什么叫做跨网络&#xff1f;&#xff1f;&a…...

Linux主机安全可视化运维(免费方案)

本文介绍如何使用免费的主机安全软件,在自有机房或企业网络实现对Linux系统进行可视化“主机安全”管理。 一、适用对象 本文适用于个人或企业内的Linux服务器运维场景,实现免费、高效、可视化的主机安全管理。提前发现主机存在的安全风险,全方位实时监控主机运行时入侵事…...

Vite + Vue 3 前端项目实战

一、项目创建 npm install -g create-vite #安装 Vite 项目的脚手架工具 # 或者使用yarn yarn global add create-vite#创建vite项目 create-vite my-vite-project二、常用Vue项目依赖安装 npm install unplugin-auto-import unplugin-vue-components[1] 安装按需自动导入组…...

python-字符替换

[题目描述] 给出一个字符串 s 和 q 次操作&#xff0c;每次操作将 s 中的某一个字符a全部替换成字符b&#xff0c;输出 q 次操作后的字符串输入 输入共 q2 行 第一行一个字符串 s 第二行一个正整数 q&#xff0c;表示操作次数 之后 q 行每行“a b”表示把 s 中所有的a替换成b输…...

团队项目开发使用git工作流(IDEA)【精细】

目录 开发项目总体使用git流程 图解流程 1.创建项目仓库[组长完成] 2. 创建项目&#xff0c;并进行绑定远程仓库【组长完成】 3.将项目与远程仓库&#xff08;gitee&#xff09;进行绑定 3.1 创建本地的git仓库 3.2 将项目添加到缓存区 3.3 将项目提交到本地仓库&#…...

爬虫案例实战

文章目录 一、窗口切换实战二、京东数据抓取 一、窗口切换实战 案例实战&#xff1a;使用selenium实现打开百度和腾讯两个窗口并切换 知识点&#xff1a;用到selenium中execute_script()执行js代码及switch_to.window()方法 全部代码如下&#xff1a; import time import war…...

uniapp uni-popup内容被隐藏问题

今天开发新需求的时候发现uni-popup 过一会就被隐藏掉只留下遮罩(css被更改了)&#xff0c;作者进行了如下调试。 1.讲uni-popup放入其他节点内 失败&#xff01; 2.在生成dom后在打开 失败&#xff01; 3.uni-popup将该节点在包裹一层 然后将统计设置样式&#xff0c;v-if v-s…...

leetcode155 最小栈

题目 设计一个支持 push &#xff0c;pop &#xff0c;top 操作&#xff0c;并能在常数时间内检索到最小元素的栈。 实现 MinStack 类: MinStack() 初始化堆栈对象。void push(int val) 将元素val推入堆栈。void pop() 删除堆栈顶部的元素。int top() 获取堆栈顶部的元素。i…...

在Ubuntu乌班图上安装Docker

最近在学习乌班图相关的内容&#xff0c;找了一些文档安装的都是报错的&#xff0c;于是记录一下学习过程&#xff0c;希望也能帮助有缘人&#xff0c;首先查看乌班图的系统版本&#xff0c;我的是如下的&#xff1a; cat /proc/version以下是在Ubuntu 20.04版本上安装Docker。…...

【Redis数据库百万字详解】数据持久化

文章目录 一、持久化1.1、什么是持久化1.2、持久化方式1.3、RDB优缺点1.4、AOF优缺点 二、RDB持久化触发机制2.1、手动触发2.2、自动触发 三、RDB持久化配置3.1、配置文件3.2、配置查询/设置3.3、禁用持久化3.4、RDB文件恢复 四、RDB持久化案例4.1、手动持久化4.2、自动持久化案…...

echarts legend. icon的展示

默认展示 icon展示circle圆形rect矩形roundRect圆角矩形triangle三角形diamond菱形pin水滴arrow箭头none不显示...

PHPstudy情况下上传图片马需要的.htaccess文件

网上的方法是无效的&#xff1a; <FilesMatch "test.jpg">SetHandler application/x-httpd-php</FilesMatch>原因是新版本的phpstudy使用了cgi模式,而网上的方法只适用于linux模式。 <FilesMatch "tpm.png"> AddHandler fcgid-script …...

基于最大重叠离散小波变换的PPG信号降噪(MATLAB 2018)

光电容积脉搏波PPG信号结合相关算法可以用于人体生理参数检测&#xff0c;如血压、血氧饱和度等&#xff0c;但采集过程中极易受到噪声干扰&#xff0c;对于血压、血氧饱和度测量的准确性造成影响。随着当今社会医疗保健技术的发展&#xff0c;可穿戴监测设备对于PPG信号的质量…...

Gradio中Button用法及事件监听器click方法使用

Gradio中Button用法及事件监听器click方法使用 瞎想乱记 事情是这样的&#xff1a;入职时面试的是Java&#xff0c;简历中写了会python&#xff0c;刚好最近有个小项目需要用Python实现&#xff0c;老板就将这个项目交给了我&#xff0c;我… 项目中还真遇到了好几个坑&#…...

【Qt秘籍】[005]-Qt的首次邂逅-创建

一、如何创建文件&#xff1f; 当我们打开Qt Creator&#xff0c;你会发现整个界面类目繁多。现在&#xff0c;让我们直接开始新建一个项目。 1.点击左上角的“文件”>点击“新建文件或项目” 2.如图&#xff0c;选择“Application”>“Qt Wifgets application”> “…...

亚信安慧AntDB:值得信任的数据产品

AntDB的一个显著特点是其高度的容错性和可靠性。AntDB采用了先进的冗余和备份机制&#xff0c;确保在面对硬件故障或系统异常时仍能保持数据的完整性和可用性。这种稳定性不仅为运营商的核心业务提供了持久的保障&#xff0c;也提升了用户的信任和满意度。 AntDB的容错性和可靠…...

超越传统AI 新型多智能体系统MESA,探索效率大幅提升

探索多智能体强化学习的协同元探索 —— MESA 算法深度解读在多智能体强化学习&#xff08;MARL&#xff09;的征途中&#xff0c;如何高效探索以发现最优策略一直是研究者们面临的挑战。特别是在稀疏奖励的环境中&#xff0c;这一问题变得更加棘手。《MESA: Cooperative Meta-…...

[SWPU 2019]神奇的二维码、buuctf部分web题

目录 [SWPU 2019]神奇的二维码 [LitCTF 2023]Http pro max plus [SWPUCTF 2021 新生赛]finalrce ​[鹏城杯 2022]简单包含 [SWPUCTF 2022 新生赛]ez_ez_php(revenge) [GKCTF 2020]cve版签到 cve-2020-7066&#xff1a; [SWPU 2019]神奇的二维码 解码看看&#xff0c;是…...

生成xcframework

打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式&#xff0c;可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...

中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试

作者&#xff1a;Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位&#xff1a;中南大学地球科学与信息物理学院论文标题&#xff1a;BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接&#xff1a;https://arxiv.…...

《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)

CSI-2 协议详细解析 (一&#xff09; 1. CSI-2层定义&#xff08;CSI-2 Layer Definitions&#xff09; 分层结构 &#xff1a;CSI-2协议分为6层&#xff1a; 物理层&#xff08;PHY Layer&#xff09; &#xff1a; 定义电气特性、时钟机制和传输介质&#xff08;导线&#…...

Java - Mysql数据类型对应

Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...

【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分

一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计&#xff0c;提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合&#xff1a;各模块职责清晰&#xff0c;便于独立开发…...

基于matlab策略迭代和值迭代法的动态规划

经典的基于策略迭代和值迭代法的动态规划matlab代码&#xff0c;实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...

LeetCode - 199. 二叉树的右视图

题目 199. 二叉树的右视图 - 力扣&#xff08;LeetCode&#xff09; 思路 右视图是指从树的右侧看&#xff0c;对于每一层&#xff0c;只能看到该层最右边的节点。实现思路是&#xff1a; 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...

算法岗面试经验分享-大模型篇

文章目录 A 基础语言模型A.1 TransformerA.2 Bert B 大语言模型结构B.1 GPTB.2 LLamaB.3 ChatGLMB.4 Qwen C 大语言模型微调C.1 Fine-tuningC.2 Adapter-tuningC.3 Prefix-tuningC.4 P-tuningC.5 LoRA A 基础语言模型 A.1 Transformer &#xff08;1&#xff09;资源 论文&a…...

十九、【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建

【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建 前言准备工作第一部分:回顾 Django 内置的 `User` 模型第二部分:设计并创建 `Role` 和 `UserProfile` 模型第三部分:创建 Serializers第四部分:创建 ViewSets第五部分:注册 API 路由第六部分:后端初步测…...