升级一下《单词猜谜》

全面讲解Arduino IDE汉化操作流程 手把手教你完成Arduino IDE汉化,解决arduino ide怎么设置中文的常见问题,让初学者也能轻松切换界面语言,提升使用体验。 阅读详情

网上的单词猜谜都是英文的,不会英语的头痛

于是,我把《单词猜谜》改成中文,并且加上了点新功能:

import random as rdm

c = rdm.randint(1, 3)

name1 = input("你的名字叫什么?:")
if c == 1:
    turns1 = 15
    print(f"你很幸运{name1}你有15次机会")
elif c == 2:
    turns1 = 10
    print(f"运气不错{name1}你有10次机会")
elif c == 3:
    turns1 = 5
    print(f"糟糕透了{name1}你只有5次机会")

words1 = ['Donkey', 'Aeroplane', 'America', 'Program',
          'Python', 'language', 'Cricket', 'Football',
          'Hockey', 'Spaceship', 'bus', 'flight']
word1 = rdm.choice(words1)
guesses1 = ''
while turns1 > 0:
    failed1 = 0
    for char in word1:
        if char in guesses1:
            print(char)
        else:
            print("_")
            failed1 += 1

    if failed1 == 0:
        print("你赢了!!!")

        print("正确的单词是: ", word1)
        break
    guess1 = input("输入你猜的单词:")

    guesses1 += guess1

    if guess1 not in word1:

        turns1 -= 1

        print("猜错啦!")

        print("你还能猜", + turns1, '次')

        if turns1 == 0:
            print("你输了。。。")

 

直接复印过去就可以玩了

 (求赞🥺)

超越BPG:自回归与分层先验如何重塑端到端图像压缩的极限 本文探讨了自回归与分层先验技术在端到端图像压缩领域的突破性应用,首次实现超越传统BPG压缩标准的性能。通过分析自回归模型的像素预测机制与分层先验的并行优势,揭示了二者结合如何动态优化码率分配,在相同质量下节省17%存储空间。尽管存在计算成本挑战,该方法为下一代图像压缩技术提供了新方向。 阅读详情

相关推荐

DETR:基于Transformer的端到端目标检测革命

本文深入解析了DETR(基于Transformer的端到端目标检测模型)如何革新传统目标检测方法。通过消除手工设计组件(如NMS和锚框)并采用Transformer架构,DETR实现了端到端的集预测,在COCO数据集上达到与Faster R-CNN相当的精度。文章详细探讨了DETR的核心技术、实战对比及部署优化,为计算机视觉领域提供了新的解决方案。

weixin_29191761的博客 215

通过游戏编程学Python(番外篇)— 乱序成语、猜单词

通过游戏编程学Python 通过游戏编程学Python(5)— 猜成语(下) 通过游戏编程学Python(4)— 猜成语(上) 通过游戏编程学Python(3)— 赌大小 文章目录通过游戏编程学Python前言一、知识点二、猜成语小游戏的扩展1. 玩法简介2. 游戏流程3. 程序代码3. 代码简析三、知识点1. Python自带的IDLE2. txt文本文件的读取readlines()方法with open() as ...3. r字符串与f字符串r字符串f字符串4. 列表生成式字符串的strip()方法

问哥还能打 1644

Apache Shiro反序列化漏洞原理、复现与纵深防御实战指南

Java反序列化漏洞是Web应用安全领域的核心威胁之一,其原理在于攻击者通过构造恶意的序列化数据,在目标系统进行反序列化操作时触发任意代码执行。这类漏洞的技术价值在于其危害性高、利用链复杂,常出现在广泛使用的Java框架和组件中。在应用场景上,反序列化漏洞常被用于攻击会话管理、远程通信和数据持久化等机制,对金融、电商和企业级系统构成严重风险。本文聚焦于Apache Shiro框架的系列反序列化漏洞,特别是围绕其RememberMe功能的加密与反序列化流程,深入剖析了从CVE-2016-4437(默认密钥)到

weixin_33739541的博客 378

Jupyter单词乱序游戏:用IPywidgets和threading.Event实现交互式倒计时

单词乱序猜谜是经典的编程教学场景,其核心在于理解状态管理、事件驱动与多线程协同。本文以Python为基础,聚焦Jupyter环境下的交互式应用开发,深入解析IPywidgets的UI响应机制与threading.Event的非阻塞控制原理——相比time.sleep的阻塞式等待,Event对象实现了UI主线程与倒计时后台线程的安全解耦,支撑暂停/恢复等实时交互。该模式广泛适用于在线测验、限时答题、数据监控等需长时运行+用户干预的工程场景,是初学者迈向可交付代码的关键实践路径。

weixin_34297704的博客 315

当语言挣脱字母的枷锁:一场通往连续思维空间的奥德赛

这是一篇关于语言模型底层范式革命的深度解析。我们将跟随腾讯微信AI团队的研究者,探索他们如何打破离散符号的桎梏,让AI在连续的语义海洋中自由航行。这不是简单的技术迭代,而是一场关于"思维带宽"的哲学思辨。

步子哥的博客 118

1.2 固态变压器:传统工频变压器的局限与SST的技术起源

本小节明确传统工频变压器在电力系统中的基础定位与核心工作特性,系统分析其在新型电力系统场景下的固有技术瓶颈,梳理固态变压器(Solid State Transformer, SST,又称电力电子变压器Power Electronic Transformer, PET)从概念提出到工程化成熟的完整演进路径,为后续SST技术优势、设计需求与规范符合性要求的讲解建立底层逻辑,同时对应GB/T 40429-2021《电力电子变压器通用技术要求》的需求制定背景。

技术工作者 660

Jupyter单词乱序游戏:IPyWidget实战与多线程状态管理

单词乱序游戏是编程教学中经典的交互式实践项目,其本质是将字符串处理、事件响应、状态同步等基础编程概念具象化。本文围绕Jupyter Notebook环境下的IPyWidget开发展开,深入解析基于threading.Event的多线程计时控制原理,阐明状态驱动设计如何规避全局变量陷阱,并结合认知心理学说明4/5/6字母难度分级的科学依据。技术价值在于提供零前端依赖、开箱即用的可复现范例,适用于Python入门教学、编程启蒙演示及轻量级教育工具快速原型开发。核心实现涵盖词库缓存策略、防形近词乱序算法、实时输入

weixin_30591551的博客 414

【项目分享】RailTracker: 火车票务数据采集与分析

从12306使用爬虫爬取火车站及车次信息、火车票价 通过本项目,我们将带领访问者手把手完成火车票数据采集、数据清洗、数据集成、可视化的一整个流程!

zhushatong的博客 3345

四博 AI 智能音箱方案基于四博 ESP32-S3 AI-Speaker 核心方案

四博AI智能音箱方案基于ESP32-S3R8高性能主控,集成麦克风、喇叭、LCD显示及Wi-Fi/BLE联网功能,支持语音唤醒、实时对话、知识库问答、声音克隆等AI能力。该方案采用云端协同架构,ESP32-S3负责音频采集/播放、UI显示等本地处理,云端实现ASR/LLM/TTS等AI功能。开发环境基于ESP-IDF5.4+,提供开源代码和硬件设计,适用于儿童学习机、智能家居中控等多种场景。量产建议包含双麦降噪、OTA回滚等关键设计,确保产品稳定性和用户体验。

qq_41126242的博客 451

如何手动打包Linux(麒麟系统)的Qt程序

Qt在windows上有自带的windeployqt来帮助打包程序,但是对于linux系统来说Qt并没有自带对应的打包程序。尽管存在开源的linuxdeployqt打包程序,但是在使用的过程中会出现很多问题,对于arm架构的系统来说需要编译并修改源码等等。确定你程序所需要的插件,然后将你使用的Qt版本对应的插件复制到plugins里边。你可以根据各个库后面的路径来找到对应的库,并将它们全部复制到之前创建的lib目录下。复制你的可执行程序到bin目录下(将 your_executable。

qq_45903233的博客 3609

从代码学习深度强化学习 - 目标导向的强化学习-HER算法 PyTorch版

经典的深度强化学习算法,如 PPO、SAC 等,在各自擅长的任务中都取得了非常好的效果。但它们通常都局限在解决单个任务上,换句话说,训练好的算法,在运行时也只能完成一个特定的任务。想象一个场景:我们想让一个机械臂能把桌子上的任何一个物体重置到任意一个指定位置。对于传统强化学习而言,如果目标物体的初始位置和目标位置每次都变化,那么这就是一个全新的任务。即便任务的“格式”——抓取并移动——是一样的,但策略本身可能需要重新训练。这显然效率极低。为了解决这类问题,

weixin_43887510的博客 1501

编译规则:从算法手中夺回AI控制权的工程化方法

在人工智能与大语言模型的应用中,提示工程(Prompt Engineering)是连接人类意图与模型输出的关键技术。其核心原理在于通过精心设计的输入指令,引导模型基于概率预测生成符合预期的内容。这项技术的价值在于将AI从黑箱转化为可引导的工具,广泛应用于内容生成、数据分析、代码编写等场景。然而,传统提示词依赖模型的“理解”与自由发挥,存在输出不稳定、格式不统一等痛点。本文聚焦于通过引入“编译规则”这一强结构化方法,将开放式对话转变为严格的“填空”任务。该方法借鉴编程语言的编译思想,通过预定义响应模板、固定语

weixin_30718391的博客 476

OpenClaw-遇到的问题- FailoverError: Model context window too small (4096 tokens). Minimum is 16000

摘要:OpenClaw配置文件中deepseek-reasoner模型的上下文窗口被默认设置为4096 tokens(实际支持128K),导致系统报错"Model context window too small"。解决方案是删除配置文件中的contextWindow和maxTokens字段,让系统自动获取模型真实能力,并重启OpenClaw服务。配置文件通常位于用户目录下的.openclaw/openclaw.json中。

直到世界的尽头 4163

我发现自监督学习补全基因-影像缺失特征,跨境早筛误诊率直降40%

上周在儿童医院看到暖心一幕:AI问诊系统建议给发烧患儿播放《小星星》,护士顺势掏出保温杯递上退烧药。这让我想起一句话——最好的医疗AI不是替代医生,而是让医生更有“人味”。就像我爷爷常说的:“看病看的是病,治的是心。”AI可以记住10万种疾病特征,却可能忘记最简单的道理——有时候,一个温暖的握手,比100个正确诊断更重要。(突然发现本文写了2025年的事,但我的手机显示今天是2024年12月7日……难道我穿越了?或者AI助手又在时间管理上翻车了?

2501_93420214的博客 892

MATLAB基础应用精讲-【数模应用】PPO算法(附python代码实现)(二)

表示为状态转移概率和动作选择概率的乘积,因为状态和动作决定轨迹。

qq_36130719的博客 413

【DRAM存储器五十六】LPDDR5介绍--WCK2CK Leveling和Read gate training

简述LPDDR5 WCK2CK leveling和read gate traning基本原理与操作步骤

highman110的博客 8792

JAVA封装思想导论(猜字谜游戏2.0)

一、引言  本章将第一篇中的猜字谜游戏1.0进行升级,然后向读者简单介绍JAVA中封装思想的部分知识以及其实现思路。二、封装思想导论  在面向对象的编程思想中提出了三大基本特征:封装、继承和多态。其中,封装是继承与多态的基础。如果不能很好的理解封装的含义,那么继承和多态的学习也无从谈起。所以,为了更好的理解封装思想,我们将解决以下几个问题(如图2.1):封装是什么?我们为什...

weixin_33862188的博客 130

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

从“预测下一个词”到“预测下一个物理状态”:一文读懂世界模型的技术原理、产业布局与实战价值

摘要:世界模型引领AI从"预测文本"迈向"预测物理状态"新纪元 智源研究院发布的"悟界·Physis-v0.1"标志着AI技术从大语言模型向世界模型的范式转变。与传统大语言模型不同,世界模型通过编码物理状态、构建"预演-验证-行动"闭环,实现了对真实世界物理规律的理解。当前该技术已在具身机器人、自动驾驶和科研仿真三大领域落地应用,展现出端侧直驱、物理理解和数据合成等核心价值。全球科技企业正围绕视频生成、空间智能、潜在表征和交互闭环四条技术路线展开竞争,中国在该领域已形成原创性技术突破。世界模型的发展将推动A

iFisher666的博客 219

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

别再让123456害了你!5个实用技巧教你打造牢不可破的密码

本文针对常见的弱口令风险,提供了5个实用技巧帮助用户打造牢不可破的密码。核心建议包括:使用长密码短语替代复杂短密码、为关键账户启用多因素认证、借助密码管理器生成并存储唯一强密码、培养识别钓鱼攻击等安全习惯,并指导在数据泄露时如何有效应对。这些方法能显著提升个人网络安全防护水平。

yog99的博客 535

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

如何写出让大模型「秒懂」的提示词?从入门到实战的保姆级指南

保姆级教程!用RTC三要素掌控AI输出:角色设定×精准任务×智能约束,告别无效提问!附电商/写作/代码实战案例,揭秘提示词设计底层逻辑,立即解锁大模型精准对话能力!开始学习吧~

qq_33474415的博客 1395

Axure中文语言包免费汉化指南:3步让Axure RP 9/10/11界面全变中文

**深夜加班,满屏英文,这样的时刻你有过吗?** 你刚把 Axure RP 下载完,满怀期待地双击图标,结果迎面而来一整屏英文——File、Page、Master、Interaction……每个单词你都"认识",可就是找不到"交互"和"动态面板"到底藏在哪。想给按钮加个点击跳转,摸索了十分钟还没成功。那一刻,你甚至开始怀疑:是不是自己压根不适合用这款工具? 打住,先别急着放弃。你缺的不是天赋,

gitblog_00289的博客 171

探秘GPT5:语言模型新篇章,推理和理解再上层楼

OpenAI在研发GPT-5,这是其人工智能模型的下一代,OpenAI 的首席执行官 Sam Altman 在接受《金融时报》采访时透露了这一消息,Sam Altman没有承诺发布的时间表,但他表示需要更多的数据进行训练,这些数据将来自互联网上的公开可用数据以及公司的专有数据。

GGBOss8的博客 782

Stable Diffusion Turbo视觉呈现:实时修改主体的流畅体验

本文介绍了如何在星图GPU平台上自动化部署⚡️ Local SDXL-Turbo镜像,实现毫秒级响应的AI图像实时编辑。用户可边输入英文提示词边即时修改主体(如将'car'替换为'motorcycle'),画面同步更新,适用于概念设计、社交媒体配图等需高频迭代的视觉创作场景。

weixin_35756892的博客 324

后端开发者必读:API设计中的常见陷阱与解决方案

客户端在请求头中携带一个唯一字符串(如UUID),服务端在缓存中以这个键去重,相同键的重复请求仅回应第一次的结果。” 听起来很美好,但结果往往是这样:随着业务增长,这个接口的参数膨胀到二十多个,每次修改都牵一发动全身。最常见的安全陷阱包括:以自增整数ID作为主键暴露在URL中(容易遍历爬取),在日志中记录密码,在错误信息里泄露堆栈栈,或者忘记对内部服务接口做鉴权。设计时你应该明确告知客户端:返回的最大条数是多少(比如最多100条),当请求的 offset 超出范围时返回空列表而非错误。

searchboy2025的博客 13

Enigma密码机初级解析

原文地址:http://blog.sina.com.cn/s/blog_6f06b8b101016s9r.html 写在前面     在又一次读完1001n兄的《密码传奇》之后,我决定写些东西,对Enigma密码机做一番简要讲述。我打算从Enigma的加密原理和相关历史两方面下笔。Enigma密码机的原理会涉及到密码学及其机械构造,我会试图进行简化,尽量少用专业知识;而历史我会从人物事

xiaogugood的专栏 1万+
上一篇: python数字猜谜2.0
迷失在一分钟
博客等级 码龄23年 12粉丝 5原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值