一、流程控制-while循环,结构如下:

while 条件:

  结果

如果条件是真,则直接执行结果,然后再次判断条件,直到条件是假,停止循环

那么我们如何终止循环呢?

1,改变循环条件

2,break

注意:continue并不能结束循环,只是结束本次循环,继续下一次循环

while循环补充:

while 条件:

  循环体

else: #循环在正常情况跳出之后会执行这里

例如:

  1. index = 1
  2.  
  3. while index < 11
  4.  
  5.   if index == 8
  6.  
  7.     #break
  8.  
  9.      pass
  10.  
  11.   else
  12.  
  13.     print(index)
  14.  
  15.   Index = index + 1
  16.  
  17. elseprint(“您好”)

注意:如果循环时通过break退出的,那么while后面的else将不会被执行,只有在while条件判断是假的时候才会执行这个else。

pass:不表示任何内容,为了代码的完整性,占位而已

二、流程控制-break和continue

1,break:打断,彻底终止当前本层循环

2,continue:停止本次循环,继续执行下一次循环

三、格式化输出

现在有以下需求,让用户输入name,age,job,hobby然后输出如下所示:

--------------- info of Alex Li ---------------

Name   : Alex Li

Age     : 22

job      : Teacher

Hobby   : girl

-------------------- end ---------------------

要怎么实现呢?你会发现,用字符拼接的方式很难实现这种格式的输出,所以一起来学一下新姿势,你需要把要打印的格式先准备好,由于里面的一些信息是需要用户输入的,你没办法预先知道,因此可以先放置一个位置占位符,再把字符串里的占位符与外部的变量做个映射关系就好了,具体如下:

  1. name = input(“Alex Li”)
  2.  
  3. age = input(“22”)
  4.  
  5. job = input(“Teacher”)
  6.  
  7. hobby = input(“girl”)
  8.  
  9. info = ’’’

--------------- info of %s -----------------    #这里的每个%s就是一个占位符

Name   : %s

Age     : %s

job      : %s

Hobby   : %s

-------------------- end -------------------

’’’ % (name , name , age , job , hobby)  #这行的%就是把前面的字符串与后面的变量关联起来

%s就是代表字符串占位符,除此之外,还有%d,是数字占位符,如果把上面age后面的换成%d,就代表你必须只能输入数字,这时age对应的数据类型必须是int类型,否则程序会报错。

int(str)  #字符串转换成int类型

str(int)  #int转换成字符串类型

如果你觉得转换类型麻烦,不想转换,也可以全部都用%s,因为任何东西都可以直接转换成字符串(仅限%s)

现在问题又来了,如果想输出: 我叫%s,今年多少岁,我们已经学习了2%的python了

这里的问题在哪里呢?没错,就是2%,在字符串中如果使用了%s这样的占位符,那么所有的%都将变成占位符,我们的2%也变成了占位符,而上句中“%的”是不存在的,这里我们需要使用%%来表示字符串中的%。

注意:如果你的字符串中没有使用过%s,%d占位,那么就不需要考虑那么多,该%就%,程序不会报错。

例如:print(“我叫%s,今年22岁了,学习python2%%了” % ‘lily’)    #有%占位符

   print(“我叫lily,今年22岁了,已经学了80%python了”)   #没有占位符

四、基本运算符

计算机可以进行的运算有很多种,可不只有加减乘除这么简单,运算按种类可分为:

算数运算

比较运算

逻辑运算

赋值运算

成员运算

身份运算

位运算

今天我们暂时学习算数运算,比较运算,逻辑运算,赋值运算

4.1 算数运算

+,-,*,/,%,**,//

4.2 比较运算

==,!=,<>,>,<,>=,<=

4.3 逻辑运算

and -- 并且,两边同时为真,结果才是真,有一个是假,结果为假

or -- 或者,两边只要有一个为真,结果就为真

not – 非真即假,非假即真

逻辑运算的进一步研究:

1,在没有()的情况下not的优先级高于and,and优先级高于or,即优先级关系:( ) > not > and > or,同一优先级的从左往右。

( ) > not > and > or

例题:判断下列逻辑语句的True,False

  3 > 4 or 4 < 3 and 1 == 1

  1 < 2 and 3 < 4 or 1 > 2

  2 > 1 and 3 < 4 or 4 > 5 and 2 < 1

  not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6

2,x or y,x为真,值就是x,x为假,值是y

x and y,x为真,值是y,x为假,值是x

例题:求出下列逻辑语句的值

  8 or 4

  0 and 3

  0 or 4 and 3 or 7 or 9 and 6

4.4 赋值运算

=,+=,-=,*=,/=,%=,**=,//=

五、编码初识

Python2解释器在加载 .py文件中的代码时,会对内容进行编码(默认ascill),而python3对内容进行编码的默认为utf-8。

早期,计算机是美国发明的,普及率不高,一般只是在美国使用,所以,最早的编码结构就是按照美国人的习惯来编码的,对应数字+字母+特殊字符一共也没多少,所以就形成了最早的编码:ASCII码,直到今天ASCII依然深深的影响着我们。

ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用8位来表示(一个字节),即2**8 = 256,所以,ASCII码最多只能表示256个字符。

随着计算机的发展以及普及率的提高,流行到欧洲和亚洲,这时ASCII码就不合适了,比如:中文汉字有几万个,而ASCII最多也就256个位置,所以ASCII不行了,怎么办呢?这时,不同的国家就提出了不同的编码用来适应于各自的语言环境,比如,中国的GBK,GB2312,BIG5,ISO-8859-1等等,这时各个国家都可以使用计算机了。

GBK,国标码占用2个字节,对应ASCII码,GBK直接兼容,因为计算机底层是用英文写的,你不支持英文肯定不行,而英文已经使用了ASCII码,所以GBK要兼容ASCII。

字母A:0100 0001 #ASCII码

字母A:0000 0000 0100 0001  #GBK国标码

由于国标码使用两个字节,所以对于ASCII 码而言,前9位都是0

国标码的弊端:只能中国用,日本用就垮了,所以国标码不满足我们的使用,这时提出了一个万国码Unicode,Unicode一开始设计是每个字符两个字节,设计完了,发现我大中国汉字依然无法进行编码,只能进行扩充,扩充成32位也就是4个字节,这回够了,但是,问题来了,中国字9万多,而unicode可以表示40多亿,根本用不了,太浪费了,于是乎,就是提出了新的UTF编码,即可变长度编码。

UTF-8:每个字符最少占8位,每个字符占用的字节数不定,根据文字内容进行具体编码,比如:英文,就一个字节就够了;汉字占3个字节,这时既满足了中文,也满足了节约,也是目前使用频率最高的一种编码

UTF-16:每个字符最少占16位

GBK:每个字符占2个字节,16位

编码小结:

1,ASCII是最早的编码,至今还在使用,一个字符8位(一个字节)

2,GBK,国标码,16位,2个字节

3,unicode,万国码,32位,4个字节

4,UTF-8,可变长度的unicode

英文:8位,1一个字节

欧洲文字:16位,2个字节

汉字:24位,3个字节

单位转换(常用到TB就够了):

8bit = 1byte

1024byte = 1KB

1024KB = 1MB

1024MB = 1GB

1024GB = 1TB

1024TB = 1PB

1024PB = 1EB

1024EB = 1ZB

1024ZB = 1YB

1024YB = 1NB

1024NB = 1DB

in 和not in

可以判断xxx字符串是否出现在xxxxx字符串中

例如:

content = input(“请输入你的评论”)

if “苍老师”in content or “邱老师” in content:

  print(“你输入的内容不合法”)

else:

  print(“评论成功”)

python入门2(补发a)的更多相关文章

  1. python入门简介

    Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC ...

  2. python入门学习课程推荐

    最近在学习自动化,学习过程中,越来越发现coding能力的重要性,不会coding,基本不能开展自动化测试(自动化工具只是辅助). 故:痛定思痛,先花2个星期将python基础知识学习后,再进入自动化 ...

  3. Python运算符,python入门到精通[五]

    运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算.例如:2+3,其操作数是2和3,而运算符则是“+”.在计算器语言中运算符大致可以分为5种类型:算术运算符.连接运算符.关系运算符.赋值运 ...

  4. Python基本语法[二],python入门到精通[四]

    在上一篇博客Python基本语法,python入门到精通[二]已经为大家简单介绍了一下python的基本语法,上一篇博客的基本语法只是一个预览版的,目的是让大家对python的基本语法有个大概的了解. ...

  5. Python基本语法,python入门到精通[二]

    在上一篇博客Windows搭建python开发环境,python入门到精通[一]我们已经在自己的windows电脑上搭建好了python的开发环境,这篇博客呢我就开始学习一下Python的基本语法.现 ...

  6. visual studio 2015 搭建python开发环境,python入门到精通[三]

    在上一篇博客Windows搭建python开发环境,python入门到精通[一]很多园友提到希望使用visual studio 2013/visual studio 2015 python做demo, ...

  7. python入门教程链接

    python安装 选择 2.7及以上版本 linux: 一般都自带 windows: https://www.python.org/downloads/windows/ mac os: https:/ ...

  8. Python学习【第二篇】Python入门

    Python入门 Hello World程序 在linux下创建一个叫hello.py,并输入 print("Hello World!") 然后执行命令:python hello. ...

  9. python入门练习题1

    常见python入门练习题 1.执行python脚本的两种方法 第一种:给python脚本一个可执行的权限,进入到当前存放python程序的目录,给一个x可执行权限,如:有一个homework.py文 ...

随机推荐

  1. laravel基础课程---16、数据迁移(数据库迁移是什么)

    laravel基础课程---16.数据迁移(数据库迁移是什么) 一.总结 一句话总结: 是什么:数据库迁移就像是[数据库的版本控制],可以让你的团队轻松修改并共享应用程序的数据库结构. 使用场景:解决 ...

  2. linux命令学习笔记(45):free 命令

    free命令可以显示Linux系统中空闲的.已用的物理内存及swap内存,及被内核使用的buffer.在Linux系统监控的 工具中,free命令是最经常使用的命令之一. .命令格式: free [参 ...

  3. UC Bug

    出现bug时,假如把A代码段删了,bug消失,那么此bug是不是一定就是A代码段导致的呢?接着写B代码段,同样bug再现,那么此bug是不是一定就是B代码段导致的呢? 未必,可能是Base代码段和A. ...

  4. Sed在匹配行前后加入一行

    a 追加内容 sed ‘/匹配词/a\要加入的内容’ example.file(将内容追加到匹配的目标行的下一行位置)i 插入内容 sed ‘/匹配词/i\要加入的内容’ example.file 将 ...

  5. sulime的必备插件

    常用插件 : SideBarEnhancements HTML-CSS-JS Prettify BracketHighlighter SublimeCodeIntel Emmet CTags Mark ...

  6. Spring 源码解析之DispatcherServlet源码解析(五)

    spring的整个请求流程都是围绕着DispatcherServlet进行的 类结构图 根据类的结构来说DispatcherServlet本身也是继承了HttpServlet的,所有的请求都是根据这一 ...

  7. ASCII字符点阵字库的制作和使用

    转自:http://blog.csdn.net/exbob/article/details/6532772 开发环境: Win7,Eclipse,MinGW 1.生成ASCII字符文件 ASCII编码 ...

  8. 阿里云服务器CentOS7中Tomcat8.x启动慢问题解决记录

    公司服务器刚换CentOS7,在内部的刀片机上一直跑的很溜,迁移到阿里云上后Tomcat启动竟然要6.7分钟!这还了得. 且日志上无任何错误,在日志中查看到如下信息: Log4j:[2015-10-2 ...

  9. iwork 文件格式分析

    根据维基百科,到2015年苹果推出的iwork版本 第一章:iwork2008介绍 1.文档结构: 是一个资源合集:压缩格式的(内含文件夹和文件) 在windows下修改iwork的文件后缀为.rar ...

  10. 【Java面试题系列】:Java基础知识常见面试题汇总 第一篇

    文中面试题从茫茫网海中精心筛选,如有错误,欢迎指正! 1.前言 ​ 参加过社招的同学都了解,进入一家公司面试开发岗位时,填写完个人信息后,一般都会让先做一份笔试题,然后公司会根据笔试题的回答结果,确定 ...