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

做营销网站设计目前搜索引擎排名

做营销网站设计,目前搜索引擎排名,网站管理公司 优帮云,茂名优化网站建设“流线”与“功能” 以“外文词典”程序设计为例 一、题目及引入 [制作外文字典] (第十周实验)词典有3个基本功能:添加,查询和退出。程序读取源文件路径下的“我的词典.txt”文件,若没有就创建一个。程序根据用户的选择进入相应的模块&#x…
c82975e846e6790815b7a518b52785da.png

“流线”与“功能”

“外文词典”程序设计为例

一、题目及引入

[制作外文字典]

(第十周实验)词典有3个基本功能:添加,查询和退出。程序读取源文件路径下的“我的词典.txt”文件,若没有就创建一个。程序根据用户的选择进入相应的模块,并显示相应的操作提示。当添加的单词已经存在时,把新输入的中文作为新的释义(即允许多重释义)。当查询的单词不存在时,要提示“词典库没有该单词”。用户输入其它选项,提示“输入错误”

b0912939ab269bd842abcd3cbf89e7cb.png

编写时需注意的个小问题

①每个功能写一个函数(显示操作菜单,增加单词,查询单词,保存词典,读入词典)

②增加单词和查询单词,不能读写文件

③只允许在函数内打开关闭文件

④再次运行要把上次保存的内容读入

看来提示①给大问题的第一次分解指明了光明道路。不妨就按照之前的建议去做,依次解决五个小问题并进行调试工作。一路做下来,每一步都是脚踏实地的快乐,每次调试都有满满的成就感。好的,我们把它们组合在一起……

78cc5845e97d36d94b0a60e5693a4b8a.png

嗯,还需要做一点点小改动。接着就是牵一发而动全身的重开……

794c6bccceed1043d76ec9a64dcd9d94.png

每一个函数的功能都考虑清楚了,但是各个功能区之间的关系还需要进一步明确,这里需要一条清晰的流线,即数据“储存”“运输”的路径

不妨从用户的角度考虑,梳理这几个功能的关系。需要明确的是,这里有一个循环,只有用户输入“3”的时候才能跳出循环

26a59a890b45331602bbf077358811e6.png

二、数据的流转与存储

数据在文本文件和python之间流转与储存,会涉及到数据储存样式、安排数据流转时间点等问题。

在文本文件里面各种数据要用什么样式储存?

python中,数据能以字符串、数字、列表、字典、元组、集合等形式储存

但在文本文件中,数据只能以文本形式储存

文本文件数据与python如何轻松对接?不妨考虑以下问题:

1

为了减少麻烦,我们可以将储存的外文统一转换成小写模式

2

如果直接将python中的字典数据

dic={“Roystonea regia”:[“大王椰子”,”王棕”] }

直接存入文本文件,那么大量特殊符号将以文本类型储存在文本文件中

3

如果直接采取这种储存样式,下一次用python读取文本文件数据时,如果不使用json库,特殊符号会以字符串形式读入python,将大量字符串重新处理成字典会比较麻烦

所以在文本文件里面的数据需要有统一的符号简单的样式。比如:

e48ec897df6a30989fb1540f8c9debef.png

如果觉得既要处理空格又要处理冒号比较麻烦,我们还可以采取以下样式

dabaf2765bb54ad97b67b890918f0c62.png

读入python时只需要对冒号切割处理,即可生成列表

2fa0aaf37f51229830132166eec20e0d.png

文本文件的读取和写入应该安排在什么时候?

如何将大象放进冰箱里面?首先打开冰箱,然后把大象放进冰箱里面,接着关闭箱门

文本文件的处理也比较类似,就是打开—处理—关闭

67850bae53b6ece7297b5dd188e1acaf.png

注意这里的“处理”包括很多方面的内容,比如读取和写入等等。为了讲清楚这个问题,我们不妨做一个类比

假设张三需要利用冰箱现有的冷水配置冷的盐水,他大致会经过这几个步骤

①打开冰箱门②取出冷水③关闭冰箱门

④按照配置操作规范弄好冷盐水⑤打开冰箱门

⑥将冷盐水放进冰箱⑦关闭冰箱门

由此可以看到,这整个过程张三开了两次冰箱门,关了两次冰箱门

这里的步骤①⑤相当于“打开”,③⑦相当于“关闭”,②⑤相当于“处理”。实际上与冰箱没有关系,因为在配置冷盐水的过程中没有任何必要对冰箱进行操作

3851cf97ad5e564d8de2e029bb4b2b6c.png

在程序设计的时候,我们也要避免反复开关冰箱门

参考“张三七步配置冷盐水法”,

可以规划一条初步的数据传输流线

①打开文本文件

②将文本文件的内容读入python的列表lis

③关闭文本文件

④用户各种操作,不论是增加外文单词还是查询,都只对lis进行处理,与文本文件无关

⑤打开文本文件

⑥将新的lis写入文本文件

⑦关闭文本文件

616d2caa446c064520af80dcdea87703.png

基本的框架已经出现了,我们需要进一步细化蓝色的部分。细化的依据大致就是从用户的角度出发置入增加和查询的流线

174022ee50cf39c062d5dac107a91b81.png

上面这个流线图里面隐隐约约出现了五个功能函数的位置(到现在我们一行代码也没有)

54bde60ca0c98e3f6efa60cbc1248533.png

    不好意思放错图了

d69b0f597429f8aac1d50fe732ce4536.png

有功能布局与交通流线分析图的味道了

如何利用好函数的变量和返回值?

例如,对于增加功能函数zengjia(),我们需要考虑这个函数在执行的时候会涉及哪些变量,比如列表lis,需要增加的外文单词jiaE,对应的解释jiaC。所以这个函数最好写成zengjia(jiaE,jiaC,lis)

至于返回值,如果增加的外文单词与对应的解释在原列表已经有记录,就需要告诉用户“已有记录”,如果添加成功,就需要告诉用户“添加成功”,所以可以让函数的返回值是一个字符串类型的变量ans,即

7a9f5cb8acd27bb6bcd0eb0618f957a2.png

在主程序就可以这样调用:

3fa390f7107d9e84bad5488531a933ca.png

同时,如果没有充足的把握,建议减少全局变量的使用

依据前面的讨论,

我们将函数的具体内容明确一下:

读取函数duqu(),打开冰箱,提取txt中信

    息并存入列表lis,关闭冰箱,最后返回lis

显示操作菜单的函数caozuo(),仅用于打印

    菜单文字

③用户输入“1”的时候调用

    增加词条函数zengjia(jiaE,jiaC,lis),

    将外文jiaE及其释义jiaC保存到列表lis里面,

    返回提示字符串ans

④用户输入“2”的时候调用

    查询函数cha(xun,lis)

    用户输入外文xun,

    在lis里面寻找对应的释义,

    返回释义ans(也可能没有释义)

⑤用户输入“3”的时候调用

    保存函数baocun(lis)

    打开冰箱,放进列表,关闭冰箱,

    跳出循环,结束运行

这个时候就可以开始给逐个功能敲代码了,首先搭建主体框架

ec77610577310e7d5f54db5e5a738f80.png

接着就是补充各个函数的功能,注意目前的主体框架中,

所有函数名都在注释内部,都不会执行,完成一个函数的代码之后再去掉该函数的注释符号,这样方便逐个调试

三、内部程序代码编写

接下来是字典程序的具体编写内容

读取函数duqu()

文本文件中的数据保存样式如下:

dabaf2765bb54ad97b67b890918f0c62.png

那么读到python中,我们可以采取

列表套列表的方式作为数据保存样式:

lis=[[“Roystonea regia”,“大王椰子”],

[“Tabernaemontan adivaricata”,“狗牙花”],

[“Roystonea regia”,“王棕”]]

2fa0aaf37f51229830132166eec20e0d.png

函数内部代码如下。

b2a5d6cc6fc9d0f889393ee4ce1c5bf8.png

调试方法就是预先在文本文件按照样式写出部分数据,然后解除主程序lis=duqu()的注释符号,并在下一行添加print(lis),检查lis的结果

显示操作菜单caozuo()

这个比较简单,不过还是调试一下

18eb6ebca9cd52f7a9791459a88c2a4d.png

调试的时候,如果输入“1”或“2”之后再次出现操作菜单,输入其他字符显示“输入错误”和操作菜单,且输入“3”的时候可以退出,即调试完成

增加词条函数zengjia(jiaE,jiaC,lis)

这里需要判断原来的列表lis内部有没有完全一样记录,如果有,就无需添加,如果没有,就按照样式添加

具体方法就是先让变量you取0,将列表的每一个元素拿出来与新增词条对比,一旦发现相同记录,就让you变成1

接着就通过变量you的数值来决定是否添加词条,注意这里的词条是添加到列表lis里面的,并不是添加到文本文件里面

另外还需要注意一个问题,如果jiaE和jiaC本身带有英文冒号,储存到文本文件之后同一行可能会出现多个冒号,那么下一次再读取时,执行duqu()的line=line.split(":")会有麻烦,为了避免切割出两个以上的字符串,不妨将英文冒号替换成中文冒号

7f60eed79479f4279eed1c32aff25c56.png

这个时候注意在主程序也要进行补充

2ccd62bd0a1c3a413428b9997cb68b29.png

同样地,这里可以通过添加print(lis)进行调试,确保新的词条已经存入列表lis里面

查询函数cha(xun,lis)

这里还需要处理的问题就是如果列表lis没有记录,要告诉用户没有记录。不妨设默认回答ans是"词典里没有{}单词!".format(xun),如果在词典里面每发现一条记录(可能有多条记录),就更改ans的值

4c7a95f043f6f1345c74b97305e41090.png

同样地,主程序也相应进行补充

04de2f0925a0c48cc412a264a4a8f3b6.png

这里的调试内容比较多,最好词典没有记录的外文、词典有一条记录的外文、词典有多条记录的外文都试一试

保存函数baocun(lis)

1ecac0c1679c589a96498be12987eed7.png

主程序也进行更改,并跳出循环

c13eba69c32caaa55ef28de7ed942cef.png

这里主要检查一下新的记录有没有写进文本文件里面。现在五个功能都完成了,最后来一次调试吧!

bbe2768629d965dcfcd7e5d830b583ab.png

之前明明都调试好的内容,最后关头来个报错还行……

看见红色字也不要害怕,可以看看其中的错误提示,想一下优化的办法

这里的意思是文本文件并不存在,所以无法读取。那我们就需要修改一下duqu(),将打开文件放在try的过程里,如果无法打开冰箱则在except内创建冰箱

cf57d09baf33c6ce23d07ab9495dc705.png

再试一试,这里注意将创建的词典删除重点排查能否自动创建词典,以及能否将原有内容读入lis

2bc11e34434131c904079747beb0ad5c.png

成功啦!

64b09241b1962399d66ea05b7f8857f7.gif

四、要点回顾

1

打开—处理—关闭

2

张三七步配置冷盐水法

3

数据存在文本文件中需要统一的符号和简单的样式

4

理清“数据流线”,排布“函数功能”

d69b0f597429f8aac1d50fe732ce4536.png

五、代码全文

e7136b9ae88d34e2ca5bf473ab11b3e0.png 789c5502fefb222d8b70735bdebbb424.png

END

-

文章 / 郭文轩

排版 / 马祎林 郭文轩

初审 / 林师伊

终审 / 申宏宇

-

1fea2447333e1e89182eda87e325ec6f.png

文章转载自:
http://charka.yzkf.cn
http://circumjovial.yzkf.cn
http://nosegay.yzkf.cn
http://moraceous.yzkf.cn
http://chairwarmer.yzkf.cn
http://spec.yzkf.cn
http://inhumanity.yzkf.cn
http://reconsider.yzkf.cn
http://blueline.yzkf.cn
http://undemonstrative.yzkf.cn
http://oogamete.yzkf.cn
http://plasmodesm.yzkf.cn
http://foredeck.yzkf.cn
http://autostoper.yzkf.cn
http://practicality.yzkf.cn
http://muscalure.yzkf.cn
http://scrutinize.yzkf.cn
http://dyspnoea.yzkf.cn
http://comb.yzkf.cn
http://alky.yzkf.cn
http://linkwork.yzkf.cn
http://agilely.yzkf.cn
http://homogenate.yzkf.cn
http://communicatory.yzkf.cn
http://theosophy.yzkf.cn
http://ramon.yzkf.cn
http://llewellyn.yzkf.cn
http://jitteriness.yzkf.cn
http://feral.yzkf.cn
http://waterleaf.yzkf.cn
http://mannerism.yzkf.cn
http://trabeated.yzkf.cn
http://censorate.yzkf.cn
http://aeneid.yzkf.cn
http://gastarbeiter.yzkf.cn
http://cautelous.yzkf.cn
http://quillwort.yzkf.cn
http://purism.yzkf.cn
http://vietnik.yzkf.cn
http://connubial.yzkf.cn
http://differential.yzkf.cn
http://tranquillizer.yzkf.cn
http://cathect.yzkf.cn
http://strychnia.yzkf.cn
http://rwandan.yzkf.cn
http://meany.yzkf.cn
http://mrc.yzkf.cn
http://rascally.yzkf.cn
http://beauty.yzkf.cn
http://editor.yzkf.cn
http://cctv.yzkf.cn
http://wainrope.yzkf.cn
http://hornpout.yzkf.cn
http://aft.yzkf.cn
http://noodge.yzkf.cn
http://criticaster.yzkf.cn
http://graymail.yzkf.cn
http://unpolitic.yzkf.cn
http://tammerfors.yzkf.cn
http://censorable.yzkf.cn
http://offline.yzkf.cn
http://inclined.yzkf.cn
http://fecundation.yzkf.cn
http://wellborn.yzkf.cn
http://unready.yzkf.cn
http://megashear.yzkf.cn
http://willoughby.yzkf.cn
http://antideuteron.yzkf.cn
http://sagaciousness.yzkf.cn
http://queenship.yzkf.cn
http://sopaipilla.yzkf.cn
http://syllepses.yzkf.cn
http://togaed.yzkf.cn
http://dermatogen.yzkf.cn
http://tommy.yzkf.cn
http://surcingle.yzkf.cn
http://neurotic.yzkf.cn
http://floozy.yzkf.cn
http://lysogeny.yzkf.cn
http://prosage.yzkf.cn
http://coseismic.yzkf.cn
http://translucence.yzkf.cn
http://erythrophyll.yzkf.cn
http://bedel.yzkf.cn
http://resourceful.yzkf.cn
http://allied.yzkf.cn
http://areola.yzkf.cn
http://jesse.yzkf.cn
http://ploughman.yzkf.cn
http://gantlope.yzkf.cn
http://epithetical.yzkf.cn
http://whelk.yzkf.cn
http://bricole.yzkf.cn
http://overstowed.yzkf.cn
http://toplofty.yzkf.cn
http://resorcinolphthalein.yzkf.cn
http://complemental.yzkf.cn
http://saltglaze.yzkf.cn
http://bierhaus.yzkf.cn
http://outbluff.yzkf.cn
http://www.15wanjia.com/news/84820.html

相关文章:

  • 最好的网站建设公司合肥网络seo
  • 卖掉的网站了对方用来做违法企业网站模板免费
  • 做网站公示cnzz数据统计
  • 做网站需要学习多久今天上海最新新闻事件
  • 阿里云虚拟主机怎么建立网站手机百度免费下载
  • 软件开发前景分析百度seo关键词排名优化教程
  • 动态网站 软件南和网站seo
  • 建设部网站公示钦州公租房摇号查询我是做推广的怎么找客户
  • 做网站建设出路在哪里百度网盘会员
  • 哈尔滨优化网站公司广东seo点击排名软件哪家好
  • 旅游类网站开发任务书网站seo优化是什么
  • 政府网站建设中存在的问题怎么联系百度客服人工服务
  • html个人网页设计代码成都seo优化
  • 太原市建设局网站首页培训后的收获和感想
  • 免费网站建设报价百度开户流程
  • 房产信息网站系统怎样利用互联网进行网络推广
  • 科技网站开发微信裂变营销软件
  • css 网站背景自己怎么开发app软件
  • p2p网站做牛宁海关键词优化怎么优化
  • 如何做链接武汉seo收费
  • 17做网站广州沙河地址每日新闻
  • 黑群晖可以做网站吗安顺seo
  • 天津做网站哪个公司好百度搜不干净的东西
  • 网站建设托管公司新闻头条最新消息
  • 做外贸自己建网站竞价托管外包
  • 电商网站建设电话教育机构
  • 网站一定要备案网络宣传方式
  • 给宝宝做衣服网站新浪体育最新消息
  • 校园网站设计毕业论文8000天津seo代理商
  • 上海定制app开发公司重庆百度seo整站优化