python语言基本语句用法总结


Posted in Python onJune 11, 2019

python语句与语法

1.python简单语句的基本介绍

>>> while True: #简单的while循环

... reply = input('Enter text:') #调用了Input,将输入传参给reply

... if reply == 'stop': break  #如果输入的是stop就退出循环

... print(reply.upper())    #如果输入的不是stop就一直将输入的转换为大写字母

...

Enter text:abc   #这是第一个输入abc,看到下面转换成大写的ABC了

ABC

Enter text:nihao123da

NIHAO123DA

Enter text:stop  #这里输入了一个stop,然后循环就退出了

>>>

上面的代码利用了Python的while循环,它是Python最通用的循环语句。简单的说,它的组成为:while这个单词,之后跟一个其结果为真或假的表达式,再接一个当顶端测试为真(这时的True看做是永远为真)时不停的迭代的嵌套代码块。

这个Input内置函数,在这里用于通过控制台输出,它打印可选的参数字符串作为提示,并返回用户输入的回复字符串。

利用嵌套代码块特殊规则的单行if语句也在这里出现:if语句体出现在冒号之后的首行,而并不是在首行的下一行缩进。

最后,Python的break语句用于立即退出循环。也就是完全跳出循环语句而程序会继续循环之后的部分。如果没有这个退出语句,while循环会因为测试总是真值而永远循环下去。

>>> while True:

...   reply = input('Enter text:')

...   if reply == 'stop': #如果是stop就退出

...    break

...   elif not reply.isdigit(): #如果输入的不是数字类型就打印Bad1 8次

...     print('Bad!' * 8)

...   else: #否则就打印输入数字的2次方

...     print(int(reply) ** 2)

...   #按回车下面是测试结果

Enter text:abc

Bad!Bad!Bad!Bad!Bad!Bad!Bad!Bad!

Enter text:a

Bad!Bad!Bad!Bad!Bad!Bad!Bad!Bad!

Enter text:2

4

Enter text:stop

>>>

Python会执行首次测试为真所想匹的代码块,按照由上至下的顺序,如果所有测试都是假,就执行else部分。

2.赋值、表达式和打印

赋值语句有些特性要专门记住,如下所示

赋值语句建立对象引用值,Python赋值语句会把对象引用值存储在变量名或数据结构的元素内。赋值语句总是建立对象的引用值,而不是赋值对象。因此,Python变量更像是指针,而不是数据存储区域。

变量名在首次赋值时会被创建。Python会在首次将(即对象引用值)赋值给变量时创建其变量名。有些(并非全部)数据结构元素也会在赋值时创建(例如,字典中的元素,一些对象属性)。一旦赋值了,每当这个变量名出线在表达式时,就会被其所引用的值取代。

变量名在引用前必须先赋值。使用尚未进行赋值的变量名是一种错误,如果你视图这么做,Python会引发异常,而不是返回某种模糊的默认值;如果返回默认值,就很难再程序中找出输入错误的地方。

执行隐式赋值的一些操作,在Python中,赋值语句会在许多情况下使用。例如,模块导入、函数和类的定义、for循环变量以及函数参数全都是隐式赋值运算。

>>> seq = [1,2,3,4]

>>> a,b,c,*d = seq

>>> print(a,b,c,d)

1 2 3 [4]

>>> L = [1,2,3,4]

>>> while L:

...  front, *L = L

...  print(front,L)

...

1 [2, 3, 4]

2 [3, 4]

3 [4]

4 []

当使用一个带星号的名称的时候,左边的目标中的项数不需要与主题序列的长度匹配。实际上,带星号的名称可以出现在目标中的任何地方

打印操作

在python中,print语句可以实现打印--只是对程序员友好的标准输出流的接口而已。从技术角度来讲,这是把一个或多个对象转换为其文本表达形式,然后发送给标准输出或另一个类似文件的流。

文件对象方法:例如file.write(str).打印操作是类似的,但更加专注--文件写入方法是把字符串写入到任意的文件,print默认地把对象打印到stdout流,添加了一些自动的格式化。和文件方法不同,在使用打印操作的时候,不需要把对象转换为字符串。

标准输出流:标准输出流(通常叫做stdout)只是发送一个程序的文本输出的默认的地方。加上标准输入流和错误流,它只是脚本启动时所创建的3种数据连接中的一种。标准输出通常映射到启动Python程序的窗口,除非它已经在操作系统的shell中重定向到一个文件或管道。

if测试和语法规则

Python语法规则

Python语法有些特性是我们需要知道的: 语句是逐个运行的:python一般都会按照次序从头到尾执行文件中嵌套块中的语句,但是像if(还有循环)这种语句会使得解释器在程序内跳跃。因为Python经过一个程序的路径叫做控制流程,像if这类会对其产生影响的语句,通常叫做控制流程语句。 块和语句的边界会自动检测。Python的程序块中没有大括号或“begin/end”等分隔字符;反之,Python使用首行下的语句缩进把嵌套块内的语句组合起来。同样地,Python语句一般是不以分号终止的,一行的末尾通常就是该行所写语句的结尾。

复合语句=首行+“: ” + 缩进语句。Python中所有复合语句都遵循相同格式:首行会以冒号终止,再接一个或多个嵌套语句,而且通常都是在首行下缩进的。缩进语句叫做块(有时叫做组)。在If语句中,elif和else分句是if的一部分,也是其本身嵌套块的首行。 空白行、空格以及注释通常都会忽略。文件中空白行将忽略(但在交互模式提示符下不会)。语句和表达式中的空格几乎都忽略(除了在字符串常量内,以及用在缩进时)。注释总是忽略:它们以#字符开头(不是在字符串常量内),而且延伸至该行的末尾。 文档字符串(docstring)会忽略,但会保存并由工具显示。Python支持的另一种注释,叫做文档字符串(简称docsting)。和#注释不同的是,文档字符串会在运行时保留下来以便查看。文档字符串只是出现在程序文件和一些语句顶端的字符串中。Python会忽略这些内容,但是,在运行时会自动将其附加在对象上,而且能由 文档工具显示。

while和for循环

while语句是Python语言中最通用的迭代结构。

>>> x = 'spam'

>>> while x:

...   print(x,end='')

...   x = x[1:]

...

spampamamm>>>

注意,这里使用end= ‘'关键字参数,使所有输出都出现在同一行,之间用空格隔开;

在python中:

break : 跳出最近所在的循环(跳过整个循环语句)

continue : 跳到最近所在循环的开头处(来到循环的首行)

pass:什么事也不做,只是空占位语句

循环else块:只有当循环正常离开时才会执行(也就是没有碰到break语句)

Python 相关文章推荐
python函数参数*args**kwargs用法实例
Dec 04 Python
python中zip和unzip数据的方法
May 27 Python
fastcgi文件读取漏洞之python扫描脚本
Apr 23 Python
Python编程实现双击更新所有已安装python模块的方法
Jun 05 Python
python操作列表的函数使用代码详解
Dec 28 Python
Python 使用PIL中的resize进行缩放的实例讲解
Aug 03 Python
对Python3 解析html的几种操作方式小结
Feb 16 Python
基于PyQt4和PySide实现输入对话框效果
Feb 27 Python
Falsk 与 Django 过滤器的使用与区别详解
Jun 04 Python
twilio python自动拨打电话,播放自定义mp3音频的方法
Aug 08 Python
Python内置数据类型中的集合详解
Mar 18 Python
Python使用mitmproxy工具监控手机 下载手机小视频
Apr 18 Python
python实现对象列表根据某个属性排序的方法详解
Jun 11 #Python
Python实现计算文件MD5和SHA1的方法示例
Jun 11 #Python
python 求1-100之间的奇数或者偶数之和的实例
Jun 11 #Python
python flask框架实现传数据到js的方法分析
Jun 11 #Python
python 求一个列表中所有元素的乘积实例
Jun 11 #Python
python ChainMap的使用和说明详解
Jun 11 #Python
python 计算一个字符串中所有数字的和实例
Jun 11 #Python
You might like
PHP实现自动发送邮件功能代码(qq 邮箱)
2017/08/18 PHP
PHP中如何使用Redis接管文件存储Session详解
2018/11/28 PHP
在PHP中输出JS语句以及乱码问题的解决方案
2019/02/13 PHP
Javascript学习笔记6 prototype的提出
2010/01/11 Javascript
window.parent与window.openner区别介绍
2012/04/12 Javascript
多个表单中如何获得这个文件上传的网址实现js代码
2013/03/25 Javascript
Ext JS添加子组件的误区探讨
2013/06/28 Javascript
如何解决Jquery库及其他库之间的$命名冲突
2013/09/15 Javascript
jquery控制select的text/value值为选中状态
2014/06/03 Javascript
javascript实现无限级select联动菜单
2015/01/02 Javascript
JavaScript中数据结构与算法(二):队列
2015/06/19 Javascript
jquery图片滚动放大代码分享(2)
2015/08/28 Javascript
JavaScript各类型的关系图解
2015/10/16 Javascript
jQuery基于xml格式数据实现模糊查询及分页功能的方法
2016/12/25 Javascript
javascript实现去除HTML标签的方法
2016/12/26 Javascript
jquery pagination分页插件使用详解(后台struts2)
2017/01/22 Javascript
JavaScript中递归实现的方法及其区别
2017/09/12 Javascript
浅谈Angular文字折叠展开组件的原理分析
2017/11/24 Javascript
Vue.js 踩坑记之双向绑定
2018/05/03 Javascript
Vue中使用create-keyframe-animation与动画钩子完成复杂动画
2019/04/09 Javascript
Vue.js递归组件实现组织架构树和选人功能
2019/07/04 Javascript
JavaScript检测是否开启了控制台(F12调试工具)
2020/10/02 Javascript
[43:24]VG vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/20 DOTA
[02:08]什么藏在DOTA2 TI9“小紫本”里?斧王历险记告诉你!
2019/05/17 DOTA
python脚本实现验证码识别
2018/06/07 Python
Python socket模块实现的udp通信功能示例
2019/04/10 Python
python使用matplotlib:subplot绘制多个子图的示例
2020/09/24 Python
详解纯CSS3制作的20种loading动效
2017/07/05 HTML / CSS
使用HTML5的Canvas绘制曲线的简单方法
2015/09/08 HTML / CSS
巴西电子、家电、智能手机购物网站:Girafa
2019/06/04 全球购物
比较一下entity bean和session bean
2013/12/27 面试题
会计专业大学生职业生涯规划书
2014/02/11 职场文书
安全大检查实施方案
2014/02/22 职场文书
房产公证书范本
2014/04/10 职场文书
幼儿园万圣节活动总结
2015/05/05 职场文书
2015年数学教师工作总结
2015/05/20 职场文书