我与python的故事

Python的历史大概从90年代初开始, 不过当时在中国知道这个名字的人我猜测可能很少。 而我知道这个名字的时候已经是2004年初了。当时我回国过年,年后去广州办事,偶一日因为等人无聊于是跑到天河的一间书店看书。我翻过的其中一本书是蔡学镛的<<java夜未眠>>,在比较靠后的某一章提到Python. 他的comment: 易学易用,功能强大,国外很多人使用.

当时我不免觉得奇怪, 依稀记得在我们所里看到过的几种语言中没发现这个名字。我们所是做数值计算的.主要用 Fortran(77), C/C++, TCL 还有一种说不出名字的脚本语言。 过几天,我回英国了,回去后我询问了一下同事, "你们听说过这种语言么?” 我抽样了5个人,其中只有一个知道,他是搞图像处理的对python的评价颇高。 不过当时我忙于论文的事情,到结束后没多久就回国了,“学一下python"这个念头自然很快消失了.

 

我回国的第一份工作是做单片机在汽车电子的应用, 应用领域主要是C51和Dos, 使用环境基本上和python不搭界. 05年上半年曾经看过一下 Learning in Python, 不过因为找不到什么可用的地方 看下去就没什么劲头。看了两章就算了.

到了下半年,事情有了一些转机,公司要开始搞些信息化的管理之类的事物,需要有某些人来处理此类流程和开发一些应用。

当时无人可选,经理于是把我调过去做这类事情 他给领导的理由是”此人以前学财务会计,研究生学过应数,应该逻辑思维

比较强,比那些搞电子的好些“。 领导居然也同意了。

 

我只有1个人,要做的事情很多,于是我想找一个能rapid-development的工具,至少能rapid-prototyping的冬冬。我评估了一下我会的语言 c/c++, java都不怎么符合这个要求。勉强符合的delphi却又提不起兴趣去用。 又一次,我想到了python。我在emule下了几本书.python in a nutshell, python in win32, programming python等。 因为我需要做的事情和其他win32下的应用有密切的交互性,扫了几眼python in win32后觉得这个东西应该就是我所寻找的.

 

不得不说 learning by doing是学习新语言的比较好的方式,我不到4天的时间把learning in python看完了,然后开始进行使用..... 

 

从06年到08年我离开的时候,我大致用python开发了3-4个应用包括一些比较复杂的生产控制的应用。

 

我个人对python的感受:

我觉得使用python进行开发是件很美好的事情。有一次我同学问我为什么使用这个语言。我回答是我看这个东西比较顺眼,而且我觉得在idle下面敲代码给我一种赏心悦目的感觉。 开源的那个eric说过"一种语言能缩短你思考和敲打键盘的时间间隔就是一门好的语言“ 我和他的感受一样 基本上可以做到和思维同步. 虽然我没怎么用过python的高级特性,很多时候我只是把它当作一种simplified c++来使用, 但是这已经缩短了很多很多时间.

 

python有足够多的库作为选择,而且作extension因为swig的存在也变得很直观。我使用的开发环境也远比用其他简单的多, 只有一个idle, 偶尔开pythonwin看it的com browser.  需要查函数,只需要在shell 打 import xxx, dir(xxx) 看看即可. 对比使用netbeans, vs2005的感受大是不同。

 

python不是pure OO language, 不过我也不是一个OO的fans, 我也不认为OO在任何时候都是解决问题的合理手段, dirty and lazy几乎是人的本性之一, 没有什么不好.

 

python的运行环境的宽度令我惊讶. 我写的生产运营系统需要在一台celeron 550, ram 128m win98下使用 在06年的时候,这种机器估计也只能卖个2,300。 任何.net java jvm based 的程序在这种机器运行和自虐无甚区别。真正能有用武之地的怕是delphi了. 不过令我意外的是 那套系统运行的很好,我目测估计大约比delphi写的慢25%左右。除了在计算产品配置这种较为极端的运算才会延迟. 这个事件一改我认为python十分慢的印象。 它是十分慢,不过不是非常慢.

 

python我抱怨的地方不多 一个是indention问题,在某些自作主张的编辑器里面的python代码会变得不可思议。正确理解和使用tab居然变成一件头等的大事.python的thread又是另外一个问题. GIL使multi-core 变得毫无用处。幸好 pyprocessing的出现某种程度alleviate了这种麻烦。

 

毫无疑问,我和python的故事仍然会继续下去,至少目前我看不出为什么要抛弃它的理由. 这是一种很有趣,很handy的语言。套用一句流行语 "very good very strong"

 

 

 

 

Python几个有趣和特别的小故事 前言 当一门编程语言是开源的时候,往往会有产生一些搞笑和有趣的东西。通常,这意味着社区的贡献者会为该语言添加一些有趣和特别的彩蛋以及隐藏的特性(当然前提是不会增加在生产环境中使用的风险)。 Python 就是一个很好的例子。作为一门开源的语言,它的社区为其贡献了一些十分幽默的东西。 旁注:如果您想观察彩蛋,请注意,它们只能在第一次工作。如果希望重新运行它们,需要重新启动 Python shell。 1、Hello World 程序员们都熟悉 Hello World 的概念。在... 阅读详情

相关推荐

用Python自动推送睡前小故事给你爱的人

本文利用了简单的Python爬虫、邮件发送以及定时任务实现了每天 定时发送睡前小故事 的功能,是一篇步骤详尽的文章。 经过测试,该 程序仍能正常运行 。 最近,某可爱要求我忙完之后给她每晚睡前讲讲小故事,我想了下,网络上应该有各种资源,小故事也都能搜得到,但是数量比较少,而且格式不够统一,提取比较困难。转念一想,面向儿童的睡前故事可能也比较适用,于是我准备从儿童睡前故事中取材 一共有700则小故事,嗯,一天一则数量可以满足,html格式也比较统一,就决定是它了!另外注意:不管你是为了Python就业还是兴趣

梦子微信 399

Pyhon的前世今生

当各位初识Python时,可能就已经迫不及待的想要将它所有的内容都植入到各位的智囊,就好像一见钟情,急切地想要了解它的一切。然而,太迫切往往容易事与愿违,对于傲娇的Python来说,各位需要以诚意、细心、耐心攻破它的道道防线,直到可以灵活的驾驭它。

qq_62500411的博客 2821

使用 Python 将数据转换为故事:使用 Pynarrative 进行有效故事讲述的指南

对于我们的第一次数据叙事冒险,我们希望在此数据集的所有数据(20 年)中展示全球饥饿的趋势。现在,让我们在这里再迈出一步 — 让我们为我们正在可视化的国家/地区添加特定的上下文数据 — 具体来说,就是用于及时显示事件的注释。为了支持她的工作,让我们下载一个有用的数据集,该数据集显示了按国家/地区随时间的变化。等绘图库时,数据已经处于正确的顺序中,因此线条正确连接,时间序列按时间顺序流动,分组的条形正确对齐。这看起来比前面的例子要专业得多。我们可以生成一个故事,用不到 20 行代码显示在我们的图表旁边。

分享身边生活经验blog 880

python故事_Python背后的故事!

Hello,大家好,相信关注一点君的小伙伴们对Python应该有了一点了解,今天就再带着大家一起来看看Python语言背后的故事吧。昨天我们认识了Python之父这个阔爱的胖纸,就从他开始聊起吧!1.Python的起源先从Python的起源说起吧,1982年,Guido从阿姆斯特丹大学获得了数学和计算机硕士学位。然而,尽管他算得上是一位数学家,但他更加享受计算机带来的乐趣。用他的话说,尽管拥有数学...

weixin_39638086的博客 1243

python 100个小例子

Python 大数据 爬虫 小例子

CMap数据库学习及结果可视化

CMap是一个生物信息学数据库和工具,旨在通过比较基因表达谱来揭示药物、基因和疾病之间的潜在关联。CMap数据库主要用于寻找药物、化合物和生物过程之间的关系,并用于药物重定位(drug repurposing)和疾病机制研究。

zfyyzhys的博客 5599

python起源的故事_Python入门:在红遍全宇宙之前的小故事

原标题:Python入门:在红遍全宇宙之前的小故事人工智能风靡全宇宙,Python是当今最火的语言,那么小白们了解它台前幕后的小故事吗?一、python的起源说到Python,它的诞生是极具戏曲性的,重度肥皂剧爱好者Guido(龟叔)为了打发圣诞节的无趣,开发了新的脚本解释程序,这就是传说中的Python诞生记。之所以会选择 Python 作为该编程语言的名字,是因为 Guido 是一个叫 Mon...

weixin_39719077的博客 1046

第十篇|网络子系统 ②——无损以太网、PFC/ECN、DCQCN 与拥塞可视化

网络部分了解了解

qq_37535542的博客 1874

Python沙雕故事生成器

Python故事生成器 本文章小编来给大家分享使用Python制作一个故事生成器,仅供娱乐! 一、知识归纳 StringVar:控件变量,python中在使用界面编程时,用于跟踪数值不断发生变化的变量,确保数值的变更可以随时在根窗口上面显示出来。 get():用于获取文本框中用户输入的内容 set():用于放置可变的文本或者其他内容,并使其在根窗口显示出来 random.choice(seq):用于从序列中随机选择一个元素 二、创建代码 from tkinter import*#导入tkinter库

小琳爱学习 4143

RagFlow实战:如何用DeepDoc引擎高效处理扫描PDF文档(附完整代码解析)

本文详细解析了如何利用RagFlow的DeepDoc引擎高效处理扫描PDF文档。通过实战演示从环境搭建、PDF预处理、文本检测与识别,到布局分析与表格结构提取的完整流程,并提供了完整的代码实现。该方案超越了传统OCR,能输出保留原始版面信息的结构化数据,为构建高质量知识库提供了强大支持。

weixin_29245767的博客 300

Clipper库中文帮助文档

引言: 第一次接触Clipper,主要是想用来处理DXF中的图形,网上也有博友翻译过,但是可惜打不开,好像那个网站https://love2.io凉凉了,但是优快云上也有博友分享了CHM,看着只剩3个下载币的我好无奈,一怒之下花费两天的时间将英文CHM也翻译了一遍,主要还是想在翻译的同时好好的理解Clipper,为使用打下坚实的基础。当然我也会无私的奉献出来。 简单的认识一下Clipper:...

zefllj的博客 3421

python编写故事

大家好,给大家分享一下一个有趣的事情,很多人还不知道这一点。我们使用random库和列表知识,可以轻而易举的写出一个简单的故事生成器。

神经网络爱好者 244

从“Segmentation fault”到流畅运行:深入解析CARLA Engine crash与Signal 11报错排查指南

本文深入解析了CARLA仿真平台运行时遭遇的Engine crash与Signal 11(Segmentation fault)报错。文章指出,该错误的根本原因常与NVIDIA显卡驱动版本不兼容有关,并提供了从日志分析、常见方案试错到驱动安全降级的完整排查指南,帮助用户从崩溃走向流畅运行。

pca5navigator的博客 462

定时发送睡前小故事——python

原文:https://blog.youkuaiyun.com/lyc44813418/article/details/88583021 # -*- coding: utf-8 -*- import requests from bs4 import BeautifulSoup import smtplib from email.mime.text import MIMEText import ran...

weixin_41340063的博客 297

熵编码(五)-CABAC(一) 基础篇

前两篇算术编码文章介绍了算术编码原理和步骤。本篇文章介绍CABAC,基于上下文自适应的二进制算术编码。本文对CABAC的基本原理进行了详细的介绍和分析,下篇文章将会对H264编码中的CABAC熵编码的实际应用进行介绍。

尹佑壮的博客 3880

33、密码学中的选择密文攻击与Cramer - Shoup加密方案

本文详细介绍了密码学中选择密文攻击的背景及其对Cramer-Shoup公钥加密方案的影响。该方案在决策Diffie-Hellman假设和抗碰撞哈希函数的基础上,能够有效抵御自适应选择密文攻击,并且其安全性无需依赖随机预言机模型。文章还分析了Cramer-Shoup方案的设计原理、加密与解密过程,以及其在标准假设下的安全性证明方法。此外,通过一系列相关练习,帮助读者进一步理解密码学概念如密文不可区分性、ElGamal加密、Goldwasser-Micali方案等。最后,文章展望了密码学的未来发展趋势,包括量子

vscode6remote的博客 99

python做一个故事生成器

好的,那我就用中文来给你介绍一下如何用 Python 来制作一个故事生成器。 首先,你需要准备一些可供选择的故事模板。这些模板可以是一些简单的文本,例如: "有一个人,他/她去了一个神秘的城市。在那里,他/她遇到了一群勇敢的冒险家,并与他们一起经历了许多危险和冒险。最终,他/她成功地完成了任务,获得了巨大的荣誉和财富。" 然后,你可以使用 Python 中的随机函数来随机选择一个模板,并使用字...

weixin_42608299的博客 1015

大厂面试级C#上位机完整项目(终极版):工业级Modbus协议封装 + 标准多线程采集 + 全链路异常处理

(Modbus统一通信接口)、(采集服务接口)职责:定义所有核心操作的标准接口,屏蔽底层差异(RTU/TCP、串口/TCP),面向接口编程的核心体现。新增协议/采集方式,只需实现接口,核心代码零改动。/// 自定义Modbus通信异常类 - 大厂标准,区分通信异常和其他异常/// 包含异常信息+内部异常,可溯源完整错误堆栈,面试必写本次项目是对标大厂工控上位机岗位的终极版实战项目,所有代码、架构、设计都遵循大厂标准,覆盖了面试官考察的所有核心考点✅ 纯手写Modbus协议,体现你对协议底层的吃透。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 857

用python爬取网上的睡前小故事,然后每天给女票发。哈哈哈

今天看了有人用python爬故事,给女票每天发邮箱过去。看了一下感觉很棒,然后又看了评论,有说要是发微信就更好了。 所以。。。。。。 我就做了一个发微信的,哈哈。 先上结果 www.tom61.com/ertongwenxue/shuiqiangushi/index.html 这是故事的链接 用F12可以看见故事的链接在标签dl 下面的 a 里面的 href里面。title是故事名 ...

qq_36583051的博客 950

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

小小的 Python 编程故事

现在Python的火热已经不是整个编程界的事情了,Python的火热已经蔓延到小学、大学课程,之前看新闻报道说青岛的小学生课程里都开始设置Python的课程了,大学里由原...

优快云资讯 2025

深度学习工具包 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")

小小的Python编程故事

现在Python的火热已经不是整个编程界的事情了,Python的火热已经蔓延到小学、大学课程,之前看新闻报道说青岛的小学生课程里都开始设置Python的课程了,大学里由原...

AI科技大本营 1873

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Python来写一个童话故事

使用Python写一个童话故事

Quintin 5792

用Python给女朋友每日定时推送睡前小故事

最近,某可爱要求我忙完之后给她每晚睡前讲讲小故事,我想了下,网络上应该有各种资源,小故事也都能搜得到,但是数量比较少,而且格式不够统一,提取比较困难。转念一想,面向儿童的睡前故事可能也比较适用,于是我准备从儿童睡前故事中取材,搜索之后发现有一个适合提取睡前故事的网址:一共有700则小故事,嗯,一天一则数量可以满足,html格式也比较统一,就决定是它了!查看网页源代码,ctrl+F输入查询关键字幸福王国,定位到相关信息:发现其故事链接包含在dl标签中的a标签中的href属性,

优快云_224022的博客 271

Python案例004——故事生成器

【代码】Python案例004——故事生成器。

hanbing1307的博客 744

python创始人的故事_Python是怎么来的呢?讲个故事你就清楚了

名为Guido的程序员的故事有一个叫做Guido的荷兰人,他是阿姆斯特丹大学数学和计算机硕士,虽然有着双学历,但是更倾向于做计算机的工作(果然计算机牛人数学都很好啊)。那个时候的他经常使用Pascal、C、 Fortran等语言来完成他的工作。他所处的年代,由于个人计算机配置很低,比如早期的Macintosh,只有8MHz的CPU主频和128KB的RAM,一个大的数组就能占满内存(这才是卡成狗吧)...

weixin_31893057的博客 1178

教你用Python 每日定时推送睡前小故事给你__的人

文章来源:老肥码码码作者:老肥本文利用了简单的Python爬虫、邮件发送以及定时任务实现了每天定时发送睡前小故事的功能,是一篇步骤详尽的文章。经过测试,...

简说Python的博客 993
上一篇: swig, python, g++
下一篇: 西安之旅2
mathgl
博客等级 码龄19年 1粉丝 98原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值