Python电子教案3-2基本数据类型_第1页
Python电子教案3-2基本数据类型_第2页
Python电子教案3-2基本数据类型_第3页
Python电子教案3-2基本数据类型_第4页
Python电子教案3-2基本数据类型_第5页
已阅读5页,还剩129页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章基本数据类型字符串类型及其操作字符串是字符的序列表示,可以由一对单引号(')、双引号(")或三引号(''')构成,其中,单引号和双引号都可以表示单行字符串,两者作用相同。使用单引号时,双引号可以作为字符串的一部分;使用双引号时,单引号可以作为字符串的一部分。三引号可以表示单行或者多行字符串。三种表示方式如下字符串类型单引号字符串:'单引号表示,可以使用"双引号"作为字符串的一部分'双引号字符串:"双引号表示,可以使用'单引号'作为字符串的一部分"三引号字符串:'''三引号表示可以使用"双引号"字符串类型打印字符串的Python运行结果如下,注意其中的引号部分:字符串类型input()函数将用户输入的内容当作一个字符串类型,这是获得用户输入的常用方式。print()函数可以直接打印字符串,这是输出字符串的常用方式。如下例子展示了如何用变量name来存储用户的名字,再输出这个变量的内容:字符串类型第2.2.4节已经介绍,字符串包括两种序号体系:正向递增序号和反向递减序号。如果字符串长度为L,正向递增需要以最左侧字符序号为0,向右依次递增,最右侧字符序号为L-1;反向递减序号以最右侧字符序号为-1,向左依次递减,最左侧字符序号为-L。这两种索引字符的方法可以在一个表示中使用。字符串类型Python字符串也提供区间访问方式,采用[N:M]格式,表示字符串中从N到M(不包含M)的子字符串,其中,N和M为字符串的索引序号,可以混合使用正向递增序号和反向递减序号。如果表示中M或者N索引缺失,则表示字符串把开始或结束索引值设为默认值。字符串类型字符串以Unicode编码存储,因此,字符串的英文字符和中文字符都算作1个字符。观察下面实例:字符串类型反斜杠字符(\)是一个特殊字符,在字符串中表示“转义”,即该字符与后面相邻的一个字符共同组成了新的含义。例如:\n表示换行、\\表示反斜、\’表示单引号、\”表示双引号、\t表示制表符(TAB)等。例如:字符串类型Python提供了5个字符串的基本操作符,如表3.10所示。基本的字符串操作符与操作符有关的实例如下:字符串使用实例程序读入一个表示星期几的数字(1-7),输出对应的星期字符串名称

例如:输入3,返回“星期三”。代码如下:运行结果如下:请输入星期数字(1-7):3

星期三微实例3.1:获取星期字符串微实例3.1通过在字符串中截取适当的子串来实现星期名称的查找。问题的关键在于找出子串的剪切位置。因为每个星期日期的缩写都由3个字符组成,如果知道星期日期字符串的起始位置,就能很容易获得缩写子串。通过下面语句,可以获得从起始位置pos开始且长度为3的子串:weekAbbrev=weekstr[pos:pos+3]字符串使用实例使用字符串作为查找表的缺点是,所剪切的子字符串长度必须相同。如果各缩写表示长度不同,还需要其他语句辅助例如,请读者思考,该如何实现一个“获取月份字符串”呢?要求根据1-12的数字返回月份名称。字符串使用实例字符串中可以增加特殊的格式化控制字符,用来输出特殊效果。特殊的格式化控制字符使用反斜杠(\)开头,常用控制字符如下:\a:蜂鸣,响铃\b:回退,向后退一格\f:换页\n:换行,光标移动到下行首行\t:水平制表\r:回车,光标移动到本行首行\v:垂直制表\0:NULL,什么都不做特殊的格式化控制字符Python解释器提供了一些内置函数,详细请参考5.8节。其中,有6个函数与字符串处理相关,如表3.11所示。内置的字符串处理函数len(x)返回字符串x的长度,Python3以Unicode字符为计数基础,因此,字符串中英文字符和中文字符都是1个长度单位str(x)返回x的字符串形式,其中,x可以是数字类型或其他类型内置的字符串处理函数每个字符在计算机中可以表示为一个数字,字符串则以数字序列的方式存储在计算机中。目前,计算机系统使用的一个重要编码是ASCII编码,该编码用数字0-127表示计算机键盘上常见的字符以及一些被称为控制代码的特殊值。例如,大写字母A-Z用65-90表示,小写字母a-z用97-122表示。内置的字符串处理函数chr(x)和ord(x)函数用于在单字符和Unicode编码值之间进行转换。chr(x)函数返回Unicode编码对应的字符,其中,Unicode编码x的取值范围是0到1,114,111(即十六进制数0x10FFFF)。ord(x)函数返回单字符x对应的Unicode编码。如下:内置的字符串处理函数设想在某些情况下给朋友传递字条信息,但又不希望传递中途被第三方看懂这些信息,因此需要对字条信息进行加密处理。传统加密算法很多,这里介绍一种非常简单的加密算法——凯撒密码。顾名思义,凯撒密码是古罗马凯撒大帝用来对军事情报进行加密的算法,它采用了替换方法对信息中的每一个英文字符循环替换为该字符后面第三个字符,对应关系如下:原文:ABCDEFGHIJKLMNOPQRSTUVWXYZ密文:DEFGHIJKLMNOPQRSTUVWXYZABC微实例3.2:恺撒密码假设用户可能使用的信息仅包括小写字母a-z,则该微实例对应的加密代码如下:微实例3.2:恺撒密码原文字符P,其密文字符C满足如下条件:C=(P+3)mod26解密方法反之,满足:P=(C–3)mod26微实例3.2:恺撒密码假设用户可能使用的信息仅包括小写字母a-z,则该微实例对应的加密代码如下:微实例3.2:恺撒密码微实例运行结果如下:微实例3.2:恺撒密码在Python解释器内部,所有数据类型都采用面向对象方式实现,封装为一个类。字符串也是一个类,它具有类似<a>.b()形式的字符串处理函数。在面向对象字典里,这类函数被称为“方法”。字符串类型共包含43个内置方法。鉴于部分内置方法并不常用,限于篇幅,这里仅介绍15个常用的内置方法,如表3.12所示。内置的字符串处理方法内置的字符串处理方法内置的字符串处理方法str.split(sep=None,maxsplit=-1)方法返回一个列表,列表是一种存储多个数据的数据类型,第6.2节将详细介绍,其中,分割str的标识符是sep,默认分隔符为空格。如果给出maxsplit参数,则只分割前maxsplit个字符,默认maxsplit参数可以不给出。str.center(width[,fillchar])方法返回长度为width的字符串,其中,str处于新字符串中心位置,两侧新增字符采用fillchar填充,当width小于字符串长度时,返回str。内置的字符串处理方法str.zfill(width)方法返回长度为width的字符串,如果字符串长度不足width时,在左侧添加字符“0”,但如果str最左侧是字符“+“或者”-”,则从第二个字符左侧添加“0”,当width小于字符串长度时,返回str内置的字符串处理方法字符串类型的格式化为什么会有字符串类型的格式化问题呢?例如,一个程序希望输出如下内容:“2016-12-31:计算机PYTHON的CPU占用率为10%。”其中,下划线内容可能会变化,需要由特定函数运算结果进行填充,最终形成上述格式字符串作为输出结果。字符串格式化用于解决字符串和变量同时输出时的格式安排。format()方法的基本使用字符串format()方法的基本使用格式是:<模板字符串>.format(<逗号分隔的参数>)<模板字符串>由一系列的槽组成,用来控制修改字符串中嵌入值出现的位置,其基本思想是将format()方法的<逗号分隔的参数>中的参数按照序号关系替换到<模板字符串>的槽中。槽用大括号({})表示,如果大括号中没有序号,则按照出现顺序替换format()方法的基本使用如图3.2所示。如果大括号中指定了使用参数的序号,按照序号对应参数替换,如图3.3所示。调用format()方法后会返回一个新的字符串,参数从0开始编号。format()方法的基本使用format()方法的基本使用format()方法可以非常方便地连接不同类型的变量或内容,如果需要输出大括号,采用{{表示},}}表示},例如:format()方法的基本使用format()方法中<模板字符串>的槽除了包括参数序号,还可以包括格式控制信息。此时,槽的内部样式如下:{<参数序号>:<格式控制标记>}其中,<格式控制标记>用来控制参数显示时的格式,格式内容如图3.4所示。format()方法的格式控制format()方法的格式控制<格式控制标记>包括:<填充><对齐><宽度>,<.精度><类型>6个字段,这些字段都是可选的,可以组合使用,这里按照使用方式逐一介绍<填充>、<对齐>和<宽度>是3个相关字段。<宽度>指当前槽的设定输出字符宽度,如果该槽对应的format()参数长度比<宽度>设定值大,则使用参数实际长度。如果该值的实际位数小于指定宽度,则位数将被默认以空格字符补充。format()方法的格式控制<对齐>指参数在<宽度>内输出时的对齐方式,分别使用<、>和^三个符号表示左对齐、右对齐和居中对齐。<填充>指<宽度>内除了参数外的字符采用什么方式表示,默认采用空格,可以通过<填充>更换。format()方法的格式控制format()方法的格式控制<.精度>表示两个含义,由小数点(.)开头。对于浮点数,精度表示小数部分输出的有效位数。对于字符串,精度表示输出的最大长度format()方法的格式控制<类型>表示输出整数和浮点数类型的格式规则。b:输出整数的二进制方式;c:输出整数对应的Unicode字符;d:输出整数的十进制方式;o:输出整数的八进制方式;x:输出整数的小写十六进制方式;X:输出整数的大写十六进制方式;format()方法的格式控制对于浮点数类型,输出格式包括4种:e:输出浮点数对应的小写字母e的指数形式;E:输出浮点数对应的大写字母E的指数形式;f:输出浮点数的标准浮点形式;%:输出浮点数的百分形式。浮点数输出时尽量使用<.精度>表示小数部分的宽度,有助于更好控制输出格式。format()方法的格式控制文本进度条进度条是计算机处理任务或执行软件中增强用户体验的重要手段,它能够实时显示任务或软件的执行进度,十分常用。本节将利用Python字符串处理方法实现文本进度条功能。最简单的,利用print()函数实现简单的非刷新文本进度条。基本思想是按照任务执行百分比将整个任务划分为100个单位,每执行N%输出一次进度条。每一行输出包含进度百分比,代表已完成的部分(**)和未完成的部分(..)的两种字符,以及一个跟随完成度前进的小箭头简单的开始%10[*****->.............................................]简单的开始由于程序执行速度远超过人眼的视觉停留时间,直接进行字符输出几乎是瞬间完成,不利于观察。为了模拟任务处理的时间效果,调用Python标准时间库time,使用time.sleep(t)函数将当前程序暂时挂起t秒,t可以是小数。由此可以接近真实的模拟进度条效果输出。简单的开始默认情况下,print()函数在输出结尾处会自动产生一个‘\n’,即换行符,从而让光标自动移动到下一行行首,这样上一步输出依旧保存在界面上。采用for循环和print()函数构成程序的主体部分,输出百分比最高为3位数据,为了使输出显得整齐,可以使用{:^3.0f}格式化百分比部分。这个简单的文本进度条代码如下。变量scale表示输出进度条的精度,读者可以修改这个值观察效果。简单的开始简单的开始简单的开始常用的计算机系统中都有进度条,这些进度条一般只在一行中改变进度比例,与实例代码4.1不同。简单说,这个不同在于原地输出和动态刷新,其基本思想是将每一次进度输出都固定在同一行,并不断地用新生成的字符串覆盖之前的输出,形成进度条不断刷新的动态效果。这种效果简称为“单行动态刷新”,可以通过print()函数实现。单行动态刷新采用print()函数的具体方法是:在print()函数中更换参数end的默认值为'',即每次使用prin()函数输出时不换行。此时,系统输出指针还停留在上一次输出的行尾,下一次输出在字符串前部增加转义符'\r',该转义符把输出指针移动到行首而不换行。动态刷新一个百分比的完整代码如下:带刷新的文本进度条单行动态刷新上述程序在IDLE中的执行效果如图,为什么输出没有单行刷新呢?这是因为IDLE本身屏蔽了单行刷新功能,如果希望获得刷新效果,请使用控制台的命令行执行e4.2TextProgressBar.py程序。以Windows系统为例,启动命令行工具(<Windows系统安装目录>\system32\cmd.exe),选择到e4.2TextProgressBar.py文件所在目录执行::\>pythone4.2TextProgressBar.py单行动态刷新将前两小节的程序合并起来,再添上开始和结束提示语,就可以很好的实现带刷新的文本进度条。为了进一步提高用户体验,在文本进度条中增加进程运行时间的监控,这里采用time库中的time.clock()函数。time.clock()函数一般多次出现,第一次调用时计时开始,同一程序中的第二次及后续调用时返回与第一次计时之间的时间差,单位为秒。该函数主要用来统计程序运行时间,增加用户体验。文本进度条完整代码如下。带刷新的文本进度条带刷新的文本进度条五花八门的进度条设计函数从本章开始进入Python语言的深入介绍。首先介绍了计算机中常用的数字类型及操作,包括Python内置的数值运算操作和数字类型转换,进一步介绍了常用的数学计算标准库math库。采用数学计算将模糊的‘好好学习,天天向上’数据化,展示了持续性学习的强大力量。本章同时介绍了字符串类型及其操作和格式化方法,并通过字符串格式化实现控制台风格的文本进度条。本章小结谢谢观看/欢迎下载BYFAITHIMEANAVISIONOFGOODONECHERISHESANDTHEENTHUSIASMTHATPUSHESONETOSEEKITSFULFILLMENTREGARDLESSOFOBSTACLES.BYFAITHIBYFAITH一本万利工程1、背景驱动2、盈利策略3、选菜试菜4、价值创造5、完美呈现6、成功面试7、持续改造(一)、一本万利工程的背景驱动

1、什么是一本万利

2、餐饮时代的变迁菜单经验的指导方针运营市场定位的体现经营水平的体现体现餐厅的特色与水准沟通的工具餐厅对顾客的承诺菜单承诺的六大表现1、名字的承诺2、质量的承诺3、价格的承诺4、规格标准的承诺5、外文翻译的准确6、保证供应的承诺

1、顾客满意度餐厅价值、价格、合理感、愉快感、安心感、美味感、便利感、满足感、有价值感、喜悦感、特别感2-2、初期投资餐厅面积、保证金、设备投资、店铺装潢、器具用品投资、制服选定、菜单制作2-1、开业准备厨具、供应商选定、设计、用品选定、餐厅配置、员工训练、餐厅气氛、促销方式3、经营数据营业额、客流量、成本率、人均消费、顾客回头率、出品速度、人事费用菜单内容决定决定相关相关决定决定决定决定以菜单为导向的硬件投资

1、餐厅的装修风格2、硬件设施服务操作3、餐厅动线4、餐具与家俬5、厨房布局6、厨房设备菜单设计正果1、能诱导顾客购买你想让他买的餐点2、能迅速传达餐厅要表达的东西3、双赢:顾客喜欢、餐厅好卖餐厅时代的变迁食物时代硬体时代软体时代心体时代食物食品饥食饱食品质挑食品味品食品德惧食体验人们正在追寻更多的感受,更多的意义更多的体验,更多的幸福(二)盈利策略1、组建工程团队2、确定核心价值3、确定盈利目标4、确定客单价5、设计盈利策略6、确定核心产品谁来设计菜单?产品=做得出来的物品商品=卖得出去的物品商家=产品具备商品附加值物(什么产品)+事(满足顾客何种需求)从物到事从食物到餐饮从吃什么到为什么吃产品本身决定一本,产品附加值决定万利从生理到心理从物质到精神从概念到五觉体验创造产品的五觉附加值体验何来

一家企业以服务为舞台以商品为道具,让消费者完全投入的时候,体验就出现了PART01物=你的企业卖什么产品+事=能满足顾客何种需求?确定核心价值理念核心价值理念1、卖什么样的菜2、卖什么样的氛围?3、如何接待顾客?卖给谁?卖什么事?卖什么价?企业目标的设定1、理论导向的目标设定2、预算3、制定利润目标费用营业额亏损区利润区临界点变动费用总费用营业额曲线费用线X型损益图利润导向的目标设定确定目标设定营业收入=固定成本+目标利润1-变动成本率-营业税率例:A餐厅每月固定成本40万,变动成本50%,营业税率5.5%,目标利率每月8万,问A餐厅的月营业收入:月营收入=(40+8)÷(1-50%-5.5%)=48÷0.445=108万测算损益平衡点保本线=固定成本1-变动成本率-营业税率例:A餐厅保本线=40÷(1-50%-5.5%)

=40÷0.445

=90万定价的三重意义2、向竞争对手发出的信息和信号1、是利润最大化和最重要的决定因素3、价格本事是价值的体现定价由此开始1、评估产品、服务的质量2、寻求顾客价值与平衡点3、以价值定义市场确定客单价盈利占比策略

占比策略内部策略销售占比占比策略内部策略10%40%10%20%20%(三)、选菜试菜1、ABC产品分析2、产品的确定(食材、口味、烹调、餐饮)3、成本的确定ABC分析策略毛利率营业额CBACABBACCCAA营业额C毛利A优化、提升增加销售双A双赢ABC顾客商品涨价保留亏本商品删营业额A毛利C顾客超额、成本过高有意义的保留无意义的删除双C双输菜单内容选择的标准因素成本设备厨师技术操作空间菜系风格吻合度品质可控度原料供应顾客喜好菜单协议度(销售目标、颜色、口味、造型、营养等)产品类别确定的四个方面1、按食材确定比例2、按口味确定比例3、按烹饪确定比例4、按餐饮确定比例

(无酒精饮品、含酒精饮品比例)框架依据操作依据目标依据成本依据试口味成本操作第一次试菜的内容精确的成本核算—五个关键词1、净料率(一料一控、一料多档)2、调味料成本(单件产品、批量产品)3、燃料成本4、统一计量单位5、标准食谱成本卡试口味餐具造型色彩第二次试菜的内容四料构成表1、符合思想审定2、符合目标审定3、符合定位审定4、符合框架审定四平构成表(四)、创造价值1、定价策略的确定2、提升双A核心产品的附加值3、增加更多的顾客选择性顾客会记住的价格最低价人均消费热门畅销品商品较多的价格带最高价产品价格和观念价值永远是不一样的,体验经济时代出售的不是产品价格,而是观念定价与确定价格的区别确定价格产品、服务主导思路确定一个易于销售的价格由企业根据成本以及和其他企业的比较确定定价基于顾客的价值私立评估价值、确定等级在顾客和企业的来往过程中确定企业定价三大策略1、薄利多销策略2、相对稳定价格策略3、高价位价格策略提升产品附加值的“十大绝招”三好七增名字好卖相故事服务选择文案时间体验健康推广感觉“附加值”提升产品附加值的“两大前提”一好味道二品质确定好卖相美色器形设摄状增健康少油汤汁盐多有机养生品种增时间原材料生长原材料获得制作耗时美味时间要求增文案—文字叙述九问1、餐点是什么?2、如何烹调制作?3、如何呈现?4、有何故事?5、有否独特的口味?6、有否体现品质等级?7、食材的来源?8、有何独特的体验?9、对人有何好处?一料多烹多吃多味增选择增推广易拉宝台卡小画册传媒宣传销售人员介绍POP(五)、完美呈现1、专业团队的选择与合作2核心价值的呈现平面制片摄影助理摄影师食品造型翻译修图师文案设计师跟印完稿员餐饮行业中照片的功能的三个层次传递信息吸引顾客传播文化菜式拍摄菜式拍摄

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论