之前主要讨论的是Python的对象,这本节将第一次走进Python的语言之旅,将会介绍条件与循环。本节我们将会涉及到复合语句,简要介绍一下Python的语法规则是有必要的
Python语法规则

1.语句是逐个运行的。Python一般都会按照次序头到尾执行文件中嵌套的语句,这也符合正常人的思考问题的方式。但是像条件、循环等语句会使得解释器在程序内跳跃。因为Python经过一个程序的路径叫做控制流程,像条件、循环等会对控制流程产生影响的语句通常叫做控制及流程语句

2.块和语句的边界会自动检测。就像我们所见,Python的程序块中没有大括号或‘’‘being,end’‘等分隔符,Python使用首行缩进把嵌套模块内的语句组合起来。同样的,Python语句一般是不以分号种植的,一行的末尾通常就是该行的所写语句的结尾。

3.复合语句=首行+“:”+缩进语句。 Python中所有复合语句都遵循相同的格式:首行会以冒号终止,在接一个或多个语句,而且通常都是首行下缩进的。缩进语句叫做块。
4.空白行、空格以及注释都会忽略
5.文档字符串(docstring)会忽略,但会保存并有工具显示

一. 条件
条件相当于一个筛选装置,即当满足条件会如何,不满足条件又会如何,这里就会出现一个或多个分支语句。
用法:

a=1;b=2
if a>b: # 冒号表示定义了一个模块
print('a大') # 条件后面必须有语句
elif a==b:
print('a、b相等')
elif a<b:
print('b大')
else: # else后面不能有条件,else不是必须的
pass # pass占位符

  

a=input('请输如0--100分的数:') #提示输入
if a.isdigit():
b=int(a) #a是字符串
if b>100:
print('输入错误')
elif b>=90:
print('优秀')
elif b>=80:
print('良好')
elif b>=60:
print('及格')
else:
print('差')
else:
print('请输入0--100的整数')

  

二.循环
在生活中我们会遇到对次用反复同一规则完成一件事,就像太阳每天从东方升起,这就是一个循环的过程。同样为解决某些问题,我们也会建立循环语句。下面我们将介绍while和for循环

while循环
1.格式:

while <test>:
<statements1>
esle:
<statements2>

  

while True: #满足判断循环
print('Hello')
#将10以内的偶数输出
a=0
while a<=10:
if a%2==0:
print(a)
a+=1
#注意a+=1是与if同一个级别的语句,若与print(a)对其则会出现错误

  

2.     break 跳出整个循环语句
        cuntinue 跳到最近所在循环的开头处(来到循环的首行)
        pass 什么也不做,起到占位作用
        循环else块 只有正常离开的时候才会执行(也就是没有碰到break语句)

a=10
while a>3:
a-=1
if a==5:
break #终止while循环
print(a) #continue
a=10
while a>3:
a-=1
if a==5:
continue #跳过了剩余的循环体,但不结束循环
print(a)
else
a=5 while a<8:
print('ok')
a+=1
## if a>6:
## break
else:
print('not ok')

else: 当循环正常结束的时候,运行else,当非正常结束的时候指的是强行推出循环的时候(break countine等)不运行else语句

for循环
for循环在Python中是一个通用的迭代器:可以遍历任何有序的序列对象内的元素
一般格式:

for <target> in <object>:
<statements1>
esle:
<statements2>

  

for i in range(10):
#将10以内的奇数输出
#方法一:
for i in range(11):
if i%2==1:
print(i)
#方法二:
for i in range(11):
if i%2==0:
continue
print(i)

  

总结:
相同点:都能循环的做一件重复的事情
不同点:while循环在条件不成立的时候停止
for循环在迭代对象穷尽的时候停止

四.嵌套循环

for a in range(4):
for b in range(4):
print('%d 行%d列 '%(a,b),end='')
print('行: ',a)

  

条件
a=1;b=2

a=1;b=2
if a>b: # 冒号表示定义了一个模块
print('a大') # 条件后面必须有语句
elif a==b:
print('a、b相等')
elif a<b:
print('b大')
else: # else后面不能有条件,else不是必须的
pass # pass占位符

  

# 集体缩进 ctrl+Tab(或ctrl+{})

#猜数字游戏:
import random
b=random.randint(1,20) #两边都都取得到
while True:
a=input('请输入1到20的整数:')
a=int(a)
if a==b:
print('恭喜你,猜对了')
break
elif a>b:
print('大了')
else:
print('小了')

  

Python基础__Python语法基础、条件、循环的更多相关文章

  1. Python基础:语法基础(3)

    本篇主要介绍Python中一些基础语法,其中包括:标识符.关键字.常量.变量.表达式.语句.注释.模块和包等内容. 1. 标识符和关键字 1.1 标识符 标识符是变量.常量.函数.属性.类.模块和包等 ...

  2. JavaScript基础——JavaScript语法基础(笔记)

    JavaScript语法基础(笔记) 1.语言编码 JavaScript语言建立在Unicode字符集基础之上,因此脚本中,用户可以使用双字节的字符命名常量.变量或函数等. [示例] var 我=&q ...

  3. python开发基础之语法基础

    一.知识点 (一)python介绍 1.Python被设计成一种高可读性的语言,它大量地使用了英语单词作为关键字,不像其他语言使用标点符号构成复杂的语法结构. 2.Pyton是支持面向对象的,支持在对 ...

  4. 从Python安装到语法基础,这才是初学者都能懂的爬虫教程

    Python和PyCharm的安装:学会Python和PyCharm的安装方法 变量和字符串:学会使用变量和字符串的基本用法 函数与控制语句:学会Python循环.判断语句.循环语句和函数的使用 Py ...

  5. python数据分析02语法基础

    在我来看,没有必要为了数据分析而去精通Python.我鼓励你使用IPython shell和Jupyter试验示例代码,并学习不同类型.函数和方法的文档.虽然我已尽力让本书内容循序渐进,但读者偶尔仍会 ...

  6. Py基础—变量名,条件循环,空执行,编码,运算符,字符比较,简化写法

    变量名 只能是字母,数字,下划线.数字不能开头,不要和python内置的东西重复.赋予变量名内容:name1 = "shit" 输出变量名内容 print(name1) 条件语句 ...

  7. Python自动化之语法基础

    1 第一个程序 hello world 在Linux环境下执行 vim hello.py #!/usr/bin/env python #指定解释器 print("hello world&qu ...

  8. python语言相关语法基础

    numpy系列import numpya = numpy.array([[1,2], [3,4]])b = numpy.array([[5,6], [7,8]])a*b>>>arra ...

  9. Python运维开发基础01-语法基础【转】

    开篇导语 整个Python运维开发教学采用的是最新的3.5.2版,当遇到2.x和3.x版本的不同点时,会采取演示的方式,让同学们了解. 教学预计分为四大部分,Python开发基础,Python开发进阶 ...

随机推荐

  1. springMvc+swagger整合例子

    Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目标是使客户端和文件系统作为服务器以同样的速度来更新.文件的方法,参数和模型紧密集成到服 ...

  2. C++11 标准库也有坑(time-chrono)

    恰巧今天调试程序遇到时间戳问题, 于是又搜了搜关于取时间戳,以及时间戳转字符串的问题, 因为 time()   只能取到秒(win和linux) 想试试看能不能找到 至少可以取到毫秒的, 于是, 就找 ...

  3. 二分图最大匹配模板【匈牙利;Dinic最大流】

    二分图最大匹配模板[匈牙利:Dinic最大流] 匈牙利算法 int n,m; vector<int> map[100010]; int match[100010];//保存匹配的互相点 b ...

  4. java 流输出的一些问题

    一.java流的控制首先要先准备一个文件,例如:File f = new File(d:/lol.txt); 二.可以使用如下指令创建流,用于不同的用途 1.FileInputStream,FileO ...

  5. vim操作备忘录

    vim操作备忘录 vim 备忘录 vim的书籍虽然看不不少,可是老是容易忘记,主要是自己操作总结过少,这个博客就主要用来记录一些比较常见的术语和操作,以防止自己再次忘记. <leader> ...

  6. PHP封装的一个单例模式Mysql操作类

    掌握满足单例模式的必要条件----三私一公. ①私有的构造方法-为了防止在类外使用new关键字实例化对象. ②私有的成员属性-为了防止在类外引入这个存放对象的属性. ③私有的克隆方法-为了防止在类外通 ...

  7. HDU - 2102 A计划 (BFS) [kuangbin带你飞]专题二

    思路:接BFS判断能否在限制时间内到达公主的位置,注意如果骑士进入传送机就会被立即传送到另一层,不会能再向四周移动了,例如第一层的位置(x, y, 1)是传送机,第二层(x, y, 2)也是传送机,这 ...

  8. OpenCV 之 空间滤波

    1  空间滤波 1.1  基本概念 空间域,在图像处理中,指的是像平面本身: 空间滤波,则是在像平面内,对像素值所进行的滤波处理. 如上图所示,假设点 (x, y) 为图像 f 中的任意点,中间正方形 ...

  9. 叼叼叼,HTML5日期(Date)类型和文本(Text)类型互相转换

    <input placeholder="From" class="form-control" type="text" onfocus= ...

  10. ACL访问控制列表

    acl是基于文件系统的,所以支不支持acl在于使用什么文件系统. FAT32文件系统不支持权限,也不区分大小写 如果一个分区不是安装系统时分的分区,是一个新的分区的话,默认是不支持acl CentOS ...