python语言基本语句用法总结

yipeiwu_com5年前Python基础

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语句)

相关文章

PyQt5每天必学之单行文本框

PyQt5每天必学之单行文本框

本文实例为大家分享了PyQt5单行文本框展示的具体代码,供大家参考,具体内容如下 QLineEdit 是一个允许输入和编辑纯文本的单行控件。系统中的撤销、重做、复制、剪切和粘贴都可用于...

Django+JS 实现点击头像即可更改头像的方法示例

Django+JS 实现点击头像即可更改头像的方法示例

首先,在models.py中创建UserModels类 from django.db import models from django.contrib.auth.models im...

python装饰器常见使用方法分析

本文实例讲述了python装饰器常见使用方法。分享给大家供大家参考,具体如下: python 的装饰器,可以用来实现,类似spring AOP 类似的功能。一样可以用来记录某个方法执行前...

dpn网络的pytorch实现方式

我就废话不多说了,直接上代码吧! import torch import torch.nn as nn import torch.nn.functional as F clas...

django框架cookie和session用法实例详解

django框架cookie和session用法实例详解

本文实例讲述了django框架cookie和session用法。分享给大家供大家参考,具体如下: 首先知道http协议 http协议它是无状态的协议,验证的信息不会保留 基于请求响应,短...