Pygame中Trivia游戏解析6-2
3.1.2 读取保存题目的文件
在Trivia类的__init__()方法中,对各变量初始化完成之后,读取保存题目的文件,代码如下所示。
f = open(filename, "r", encoding='utf8')
trivia_data = f.readlines()
f.close()
其中,open()函数的作用是打开文件,该函数的第一个参数filename是Trivia类的参数,在定义该类的对象时指定,表示保存题目的文件名。
相关链接1
《Python中文件的读取》
《Python中读取与写入文件时的编码方式》
3.1.3 处理读取到的文件
在《Python中文件的读取》中提到,readlines()函数会读取每一行的换行符,因此需要将该符号去掉,代码如下所示。
for text_line in trivia_data:self.data.append(text_line.strip())self.total += 1
以行为单位,将数据添加到data中,每添加一行,total加1。
3.2 Trivia类的print_text()函数
该函数的作用是在指定的位置,以指定的字体、颜色和阴影效果显示指定的内容。代码如下所示。
def print_text(font, x, y, text, color=(255,255,255), shadow=True):if shadow:imgText = font.render(text, True, (0,0,0))screen.blit(imgText, (x-2,y-2))imgText = font.render(text, True, color)screen.blit(imgText, (x,y))
其中,参数font表示指定的字体;x和y表示指定位置;text表示指定内容,color表示指定颜色;shadow表示是否使用阴影效果,True表示使用,False表示不使用。在函数内部,如果shadow是True,则表示使用阴影效果,screen.blit()函数的x-2,y-2参数表示显示阴影(与最后一行代码中的screen.blit()函数配合使用)。
相关链接2:
《Pygame显示文字》
相关文章:
Pygame中Trivia游戏解析6-2
3.1.2 读取保存题目的文件 在Trivia类的__init__()方法中,对各变量初始化完成之后,读取保存题目的文件,代码如下所示。 f open(filename, "r", encodingutf8) trivia_data f.readlines() f.close() 其中,open()函数…...
java 实现命令行模式
命令模式是一种行为设计模式,它允许您将请求封装为对象,以便您可以将其参数化、队列化、记录和撤销。在 Java 中实现命令模式涉及创建一个命令接口,具体命令类,以及一个接收者类,该接收者类执行实际操作。下面是一个简…...
A - Orac and Models(最长上升子序列——加强版)
There are nn models in the shop numbered from 11 to nn, with sizes s_1, s_2, \ldots, s_ns1,s2,…,sn. Orac will buy some of the models and will arrange them in the order of increasing numbers (i.e. indices, but not sizes). Orac thinks that the obtai…...
【python手写算法】逻辑回归实现分类(含公式推导)
公式推导: 代码实现: # codingutf-8 import matplotlib.pyplot as plt import numpy as npdef f(w1,x1,w2,x2,b):zw1*x1w2*x2breturn 1/(1np.exp(-z)) if __name__ __main__:X1 [12.46, 0.25, 5.22, 11.3, 6.81, 4.59, 0.66, 14.53, 15.49, 14.43,2.1…...
【2023高教社杯数学建模国赛】ABCD题 问题分析、模型建立、参考文献及实现代码
【2023高教社杯数学建模国赛】ABCD题 问题分析、模型建立、参考文献及实现代码 1 比赛时间 北京时间:2023年9月7日 18:00-2023年9月10日20:00 2 思路内容 可以参考我提供的历史竞赛信息内容,最新更新我会发布在博客和知乎上,请关注我获得最…...
yum安装mysql5.7散记
## 数据源安装 $ yum -y install wget $ wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm $ yum localinstall mysql57-community-release-el7-8.noarch.rpm $ yum repolist enabled | grep "mysql.*-community.*" $ yum install mysql-…...
DNS解析
1.DNS介绍 DNS 表示域名系统。此系统实质上是用于整理和识别各个域名的网络电话簿。电话簿将“Acme Pizza”之类的名称转换为要拨打的正确电话号码,而 DNS 将“www.google.com”之类的网络地址转换为托管该网站的计算机的物理 IP 地址,如“74.125.19.147…...
从jdk8 升级到jdk17的问题总结
目录 1. java.lang.reflect.InaccessibleObjectException: 2. java.lang.UnsatisfiedLinkError in autosys 3. java.lang.NoClassDefFoundError: Could not initialize class net.sf.jasperreports.engine.util.JRStyledTextParser 4. java.lang.UnsatisfiedLinkError: **…...
一百七十二、Flume——Flume采集Kafka数据写入HDFS中(亲测有效、附截图)
一、目的 作为日志采集工具Flume,它在项目中最常见的就是采集Kafka中的数据然后写入HDFS或者HBase中,这里就是用flume采集Kafka的数据导入HDFS中 二、各工具版本 (一)Kafka kafka_2.13-3.0.0.tgz (二)…...
pnpm 升级
1. 在以下路径下删除pnpm包 2. 执行which pnpm,在结果目录中删除pnpm 3. sudo npm install -g pnpm 重新安装,node默认使用16...
有关使用HttpServletRequest的Cookie的设置和获取
文章目录 小结问题和解决参考 小结 介绍了如何在HttpServletRequest中对Cookie的进行设置和获取。 问题和解决 在服务器端的HttpServletRequest中对Cookie的进行设置后,客户端在接下来的请求中会携带此设置好的Cookie,所以可以在服务器端接收请求时提…...
关于 Nginx 的哪些事
关于 Nginx 的哪些事 1、Nginx 主要功能2、Nginx 的常用命令2.1、启动Nginx2.2、停止 Nginx2.3、重新加载Nginx 配置2.4、检查Nginx配置文件2.5、指定配置文件2.6、检查Nginx版本2.7、显示Nginx帮助信息 3、Nginx 配置文件 nginx.conf3.1、Nginx 配置文件(nginx.con…...
插入排序——希尔排序
1、简述: 希尔排序(Shells Sort)是插入排序的一种又称“缩小增量排序”(Diminishing Increment Sort),是直接插入排序算法的一种更高效的改进版本。希尔排序是非稳定排序算法。该方法因 D.L.Shell 于 1959 年提出而得名。 希尔排…...
C语言之初阶总结篇
目录 NO.1 NO.2 NO.3 NO.4 NO.5 NO.6 NO.7 NO.8 NO.9 NO.10 NO.11 NO.12.概念tips NO.13.求最小公倍数 NO.14.最大公因数 NO.15.输入读取字符串 NO.16.倒置字符串 今天是一些C语言题目,最近天气炎热,多喝水。 NO.1 下面程序执行后&am…...
Android签名查看
查看签名文件信息 第一种方法: 1.打开cmd,执行keytool -list -v -keystore xxx.keystore,效果如下图: 第二种方法: 1.打开cmd,执行 keytool -list -v -keystore xxxx.keystore -storepass 签名文件密码࿰…...
Educational Codeforces Round 3
目录 A. USB Flash Drives B. The Best Gift C. Load Balancing D. Gadgets for dollars and pounds A. USB Flash Drives #include<bits/stdc.h>using namespace std; const int N1e65; typedef long long ll; typedef pair<ll,ll> pll; typedef array<int…...
Docker Compose常用命令
常用命令 1.1 restart, start, stop-- 启动和停止服务 命令必须在 docker-compose.yml文件所在的目录下执行。 # 前台启动, 启动项目中的所有服务。 $. docker-compose up# 后台启动, 启动所有服务并在后台运行。 $. docker-compose up -d# 停止所有服务。 $. docker-compose …...
C++——智能指针
智能指针 文章目录 智能指针内存泄漏智能指针解决内存泄漏问题智能指针的使用及原理RAII智能指针对象的拷贝问题 C中的智能指针auto_ptrunique_ptrshared_ptrweak_ptr定制包装器C11和boost中智能指针的关系 内存泄漏 什么是内存泄漏:内存泄漏指因为疏忽或错误造成程…...
CVE-2023-3836:大华智慧园区综合管理平台任意文件上传漏洞复现
文章目录 CVE-2023-3836:大华智慧园区综合管理平台任意文件上传漏洞复现0x01 前言0x02 漏洞描述0x03 影响范围0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现 CVE-2023-3836:大华智慧园区综合管理平台任意文件上传漏洞复现 0x01 前言 免责声…...
LAMP搭建WordPress
L linux A apache hhtpd M mysql/maridb P PHP1、 安装php yum -y install php php-fpm php-server php-mysql1.1、 启动php-fpm并自启 systemctl enable php-fpm --now[rootecs-1cee ~]# systemctl status php-fpm ● php-fpm.service - The PHP FastCGI Process ManagerLoa…...
5G FWA智能终端技术解析:从核心原理到部署实践
1. 项目背景与行业意义最近在圈子里看到一则消息,美格智能的5G FWA智能终端产品成功中标了中国联通的招标项目。这消息乍一看像是普通的商业新闻,但对于我们这些常年泡在通信和物联网领域的人来说,这背后其实藏着不少值得琢磨的门道。它不仅仅…...
甲言Jiayan:5分钟掌握古汉语NLP终极解决方案
甲言Jiayan:5分钟掌握古汉语NLP终极解决方案 【免费下载链接】Jiayan 甲言,专注于古代汉语(古汉语/古文/文言文/文言)处理的NLP工具包,支持文言词库构建、分词、词性标注、断句和标点。Jiayan, the 1st NLP toolkit designed for Classical C…...
GD32F103RCT6串口调试避坑指南:从寄存器配置到DMA收发实战(附代码)
GD32F103RCT6串口调试避坑指南:从寄存器配置到DMA收发实战 第一次接触GD32的串口开发时,我对着电脑屏幕上乱码的数据抓耳挠腮——明明按照手册配置了115200波特率,为什么收到的全是"天书"?后来才发现是时钟树配置的问题…...
tinychain进阶指南:如何实现区块链分叉与重组功能
tinychain进阶指南:如何实现区块链分叉与重组功能 【免费下载链接】tinychain A pocket-sized implementation of Bitcoin 项目地址: https://gitcode.com/gh_mirrors/ti/tinychain 区块链技术的核心魅力在于其去中心化的共识机制,而分叉与重组功…...
Unity风格化山脉系统:程序化生成与运行时自然逻辑
1. 这不是“又一个山地素材包”,而是一套可工业化复用的风格化自然系统你有没有在Unity项目里,拖进一个山体模型,调完材质发现它和场景里其他植被、岩石、雾效完全不搭?或者好不容易调出理想中的晨雾山色,换到另一个光…...
OpenSpeedy:终极免费游戏加速神器,一键释放游戏潜能
OpenSpeedy:终极免费游戏加速神器,一键释放游戏潜能 【免费下载链接】OpenSpeedy 🎮 An open-source game speed modifier. 项目地址: https://gitcode.com/gh_mirrors/op/OpenSpeedy 还在为单机游戏中的卡顿和缓慢进度而烦恼吗&#…...
三步让老Mac焕发新生:OpenCore Legacy Patcher终极指南
三步让老Mac焕发新生:OpenCore Legacy Patcher终极指南 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 你是否还在为那台陪伴多年的老Mac感到惋惜…...
高性能混合数据聚类算法:k-prototypes架构设计与性能优化深度解析
高性能混合数据聚类算法:k-prototypes架构设计与性能优化深度解析 【免费下载链接】kmodes Python implementations of the k-modes and k-prototypes clustering algorithms, for clustering categorical data 项目地址: https://gitcode.com/gh_mirrors/km/kmod…...
Lindy HR自动化上线72小时后,员工自助率飙升83%:我们如何用1套规则引擎替代3个外包团队
更多请点击: https://intelliparadigm.com 第一章:Lindy人力资源自动化方案的诞生背景与核心价值 在数字化转型加速推进的今天,中大型企业普遍面临HR事务重复率高、跨系统数据割裂、员工自助能力薄弱等结构性挑战。传统HRIS平台虽能承载基础…...
还在找免费 EDA 模型?这些网站直接下
做硬件的工程师都知道,画原理图、布PCB,最磨人的环节往往不是电路设计本身,而是画封装、找3D模型。一个元器件从datasheet到真正摆上PCB,中间隔着符号库、封装库、3D模型三座大山。尤其遇到冷门器件或者新出的芯片,手动…...
