|
目录一、标识符和关键字二、注释三、缩进四、输入和输出五、字符串操作六、基本数据类型七、复合数据类型7.1列表7.2元组7.3字典7.4集合八、数据类型转换九、运算符8.1算术运算符8.2比较运算符8.3赋值运算符8.4位运算符8.5逻辑运算符8.6成员运算符8.7身份运算符十、分支和循环10.1if语句10.2for循环10.3while循环十一、函数十二、文件操作提示:本文适合已经有编程基础的读者阅读,仅罗列Python中的语法,不对基础概念作讲解一、标识符和关键字标识符,即变量、方法、对象等的名字,由用户自己定义Python中标识符不能以数字开头,由大小写字母、数字、下划线组成标识符对大小写敏感,A和a是两个不同的变量名在Python3中,可以用中文作为变量名,同时允许非ASCII的标识符标识符不能和关键字相同关键字,又称为保留字,是一个计算机语言中的预定义保留标识符Python中一共有35个关键字,它们分别是:FalseclassfromorNonecontinueglobalpassTruedefifraiseanddelimportreturnaselifintryassertelseiswhileasyncexceptlambdawithawaitfinallynonlocalyieldbreakfornot二、注释单行注释:以#开头,例如#这是单行注释多行注释:以上下分别三个单引号或双引号包裹,例如'''这是多行注释'''"""这也是多行注释"""三、缩进Python不同于C++等语言,不需要用大括号括起来表示一个代码块只要一段连续多行的代码有着相同的缩进空格数即为一个代码块,例如如果在C++中的话,这三个print隶属于if语句下需要执行的代码,所以要用大括号括起来但Python只需要保证这三条语句的缩进空格是一样的即可四、输入和输出Python中的print函数用于输出我们指定的内容与C语言的printf和C++的cin不同,Python的print默认在内容的最后会自带换行,例如:如果想要取消默认换行,则需要在最后加上end="",例如Python中的input函数用于读取我们键盘输入的内容,其用法如下:在input中可以输入我们预先想要打印出来的内容,当然也可以什么都不输入然后会读取我们键盘输入的内容给等号左侧的变量需要注意,input接受输入的时候得到的结果实际上是字符串五、字符串操作前面提到,字符串是由字符组成的序列,用单引号或双引号括起来都行一个字符串中的每个字符都有一个索引(下标),第一个字符对应的索引为0,往后逐渐递增我们可以通过方括号+索引的形式来单独取出字符串中的单词,例如:还有一种操作叫切片,即通过指定一个起始索引和一个结束索引来提取指定区间的子字符串,例如可以看到,索引从1到2的子字符串就被“切”出来了。同时可以观察到,子字符串中不包含我们指定的结束索引,所以子字符串的区间范围是左闭右开的关于字符串的拼接操作也很简单,使用加号就可以将两个字符串拼成一个字符串,例如:除了两个字符串相加,还可以通过将一个字符串乘以一个正数的方式重复某个字符串,例如:六、基本数据类型Python中一共有这些数据类型: a=1#整型变量b=1.1#浮点型变量c=True#bool型变量d="hello"#字符串e=[1,2,3]#列表f=(1,2,3)#元组g={1,2,3}#集合h={1:1,2:2,3:3}#字典Python中不论是单个字符还是一串字符,其类型都是字符串 其中下面的复合数据类型列表、元组、集合和字典在后面会细讲,这里先见个面Python中的变量不需要声明类型,这也是和C++等语言不同之处相对的,每个变量在声明的同时必须赋值。在Python中,变量就是变量,没有类型,只是它内部存储的对象有类型当然,还有一些不太常见的类型,例如复数:七、复合数据类型7.1列表Python中的列表类似于C/C++中的数组,最大的区别在于其内部可以混杂不同类型的元素,例如:可以看到,列表中混杂了整型、浮点型、bool型、字符串和列表,不仅如此,还可以加入元组等列表的特征是方括号,其内部每个元素都有一个索引,第一个元素的索引为0,往后递增我们也可以通过方括号和索引来修改其内部元素,例如:列表也支持切片操作,例如:列表也支持拼接操作,例如:列表也支持乘以一个数,这里不演示了 7.2元组元组与列表类似,区别在于元组内部的元素不可被修改,例如:但是元组内部的列表可以被修改,像这样:元组的特征是小括号元组也支持切片操作,例如:元组也支持拼接操作,例如: 元组也支持乘以一个数,这里不演示了 7.3字典字典是一个key/value模型的容器,其内部也一样可以存储不同类型的键值对,例如:字典没有下标,不过我们可以通过key来访问或修改其对应的value值,像这样:字典中不能出现两个相同的key,但是可以出现相同的value字典不支持切片、拼接和乘法 7.4集合把字典去掉value值就变为了集合集合的特点是去重,即其内部不会有两个相同的元素,例如我们打印上面的这个集合可以看到True不见了,这是因为True等价于1,那么1就出现了两次,所以会去掉一个集合不支持切片、拼接和乘法八、数据类型转换在C++中,如果我们要显式的将一个类型转换为另一个类型,可以像这样:floata=1.1;intb=(int)a;在变量的前面加上类型即可Python中的类型转换也是这样,不过括号括住的不是类型而是变量,例如:a=1.1b=int(a)前面提到,input接受输入的时候得到的结果实际上是字符串,所以如果我们想实现读入两个数字并相加,则需要配合类型转换来实现,例如:另外,在C++中字符也是整型家族的一员,其值为这个字符的ASCII码但是Python中,如果我们把一个整型和一个字符相加则会导致错误,因为Python中只有字符串没有字符类型但是我们可以通过显式的类型转换把数字串转化为整型,例如:九、运算符Python中的运算符大部分和C/C++差不多,不过有一部分还是有区别的8.1算术运算符运算符描述+加-两个对象相加-减-得到负数或是一个数减去另一个数*乘-两个数相乘或是返回一个被重复若干次的字符串/除-x除以y(非整除)%取模-返回除法的余数**幂-返回x的y次幂//取整除-返回商的整数部分(向下取整)8.2比较运算符运算符描述==等于-比较对象是否相等!=不等于-比较两个对象是否不相等不等于-比较两个对象是否不相等(python3已废弃)>大于-返回x是否大于y=大于等于-返回x是否大于等于y>右移动运算符:把">>"左边的运算数的各二进位全部右移若干位,>> 右边的数字指定了移动的位数8.5逻辑运算符运算符逻辑表达式描述andxandyx和y都为真,整个表达式结果才为真,否则为假orxoryx和y都为假,整个表达式结果才为假,否则为真notnotxx为真,整个表达式结果为假;x为假,整个表达式结果为真例如:8.6成员运算符运算符描述in如果在指定的序列中找到值返回True,否则返回Falsenotin如果在指定的序列中没有找到值返回True,否则返回False例如:8.7身份运算符运算符描述is判断两个变量引用对象是否为同一个(同一块内存空间)isnot判断两个变量引用对象是否为不同一个(同一块内存空间)十、分支和循环10.1if语句Python中的if语句和C/C++不同之处在于,if后的表达式不需要用括号括住,表达式后面需要带冒号例如:另外,C/C++中的elseif在Python中也变为了elif,例如:10.2for循环相比C/C++中的for循环,Python中的for循环只需要声明变量和循环的范围即可,例如:range起到的作用就是创建一个序列,区间依旧是左闭右开如果range省略第一个数则默认区间从0开始我们也可以将range换为列表等 for循环的语法为:forin: 也就是说,只要在中,就执行下列中的语句 10.3while循环Python中的while循环和C/C++中的也类似,同样还是去掉括号并加上冒号十一、函数def函数名(参数): 函数体 return...要定义一个函数,首先得以def关键字为开头,后接函数名和圆括号,括号内为需要的参数例如写一个判断奇数的函数:十二、文件操作在Python中要想对一个文件进行操作,首先得打开这个文件open函数用于打开一个文件,并返回一个file对象,其常用形式是接收两个参数:文件路径和模式文件路径即我们需要打开的文件路径,模式则有很多个:模式描述r以只读方式打开文件。这是默认模式r+打开一个文件用于读写w打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件w+打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件a打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入a+打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写打开文件成功后会返回一个file对象,我们可以对这个file对象做一系列的操作,例如:file.readline():读取一整行file.readlines([size]):返回包含size行的列表,size未指定则返回全部行file.read([size]):从文件读取指定的字节数file.write(str):将字符串写入文件(需要对应打开模式)f.close():关闭文件,一个文件被打开后最终也要被关闭例如我们有一个在同目录下名为text.txt的文件,里面写了一句hello。我们以只读方式打开它还有一种打开文件的方法可以省略手动关闭文件的操作,像这样:如果文件有多行,我们可以用readlines返回一个包含了多行字符串的列表,然后用for循环遍历列表即可一次读取多行文件内容关于Python的语法介绍就写到这,基本已经包含了大部分的基础语法内容了如有错误欢迎在评论区指出
|
|