【python】基础语法
目录
一、基础语法
1.1 Python 标识符
1.2 python的保留字
1.3行和缩进
1.4多行语句
1.5 python空行
1.6多个语句构成代码组
二、变量类型
2.1变量赋值
2.2数据类型
2.3数据类型转换
三、运算符
3.1算数运算符(+-*/)
3.2关系运算符
3.3赋值运算符
3.4位运算符
3.5逻辑运算符
3.6成员运算符
3.7身份运算符
3.8运算符优先级
四、python模块介绍
4.1 python 数学函数:
4.2随机函数
4.3字符串转义字符
4.4 Python 字符串格式化
一、基础语法
1.1 Python 标识符
在 Python 里,标识符由字母、数字、下划线组成。但不能以数字开头。Python 中的标识符是区分大小写。
以下划线开头的标识符是有特殊意义的:
单下划线开头 _foo :不能直接访问类属性,需通过类提供的接口进行访问,不能用 from xxx import * 导入。
双下划线开头的 __foo :代表类的私有成员,以双下划线开头和结尾的 __foo__ 代表 Python 里特殊方法专用的标识,如 __init__() 代表类的构造函数。
变量命名:
- 尽量使用描述性的单词,课代表其含义,方便记忆和理解
- 变量名由多个单词组成(驼峰法:totalCount ; 蛇形命名:person_count(下划线组合单词))
Python 可以同一行显示多条语句,方法是用分号 ; 隔开即可,如:
print ('hello');print ('runoob')
1.2 python的保留字
保留字不能用作常数或变数,或任何其他标识符名称。 Python 的关键字只包含小写字母。下表显示了Python中的保留字。
1.3行和缩进
Python 与其他语言最大的区别就是,Python 的代码块不使用大括号 {} 来控制类,函数以及其他逻辑判断。 python 最具特色的就是用缩进来写模块。对缩进有严格的要求(所有代码块语句必须包含相同缩进的空格数)
if True:print ("Answer")print ("True")
else:print ("Answer") print ("False") # 没有严格缩进,在执行时会报错
1.4多行语句
Python语句中一般以新行作为语句的结束符。也可使用斜杠 \ 将一行的语句分为多行显示:
total = item_one + \item_two + \item_three
\n 实现换行。一旦用户按下 enter键退出,其它键显示。
若语句中包含 [], {} 或 () 括号就不需要使用多行连接符
days = ['Monday', 'Tuesday', 'Wednesday','Thursday', 'Friday']
Python 可使用单引号( ' )、双引号( " )、三引号( ''' 或 """ ) 来表示字符串;
(''' )可以由多行组成,常用于文本注释(单引号 ''' 或三个双引号 """)
print 默认输出是换行的,若要实现不换行需要在变量末尾加上逗号
x="a"; y="b"print x # 换行输出
print y
print '---------'print x, # 不换行输出
print y,print x,y # 不换行输出
1.5 python空行
函数之间或类的方法之间用空行分隔,类和函数入口之间也用一行空行分隔,以突出函数入口的开始。空行与代码缩进不同,空行并不是Python语法的一部分。不插入空行,Python解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于代码的维护或重构。
1.6多个语句构成代码组
代码组:缩进相同的一组语句构成一个代码块(组)
像if、while、def和class这样的复合语句,首行以关键字开始,以冒号( : )结束,该行之后的一行或多行代码构成代码组。我们将首行及后面的代码组称为一个子句(clause)。
if expression : suite
elif expression : suite
else : suite
Python 可以使用 -h 参数查看各参数帮助信息:终端输入:python -h
二、变量类型
变量是存储在内存中的值,创建变量会在内存中开辟一个空间。基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。变量可以指定不同的数据类型,从而决定其在内存中的位置。
变量类型:
整数int(4字节,会自动扩容)、浮点数float(8字节)、布尔类型bool(一个字节)、字符串(变长)可使用len求长度、其他
动态类型:程序运行中,变量类型会发生改变(修改变量)
静态类型:程序运行过程中,变量类型始终不发生变化,如C++/java
(判定编程语言是否是动态变量,只取决于运行时类型是否发生改变,不取决于变量声明是否定义)
a: int = 10 #针对变量a进行的类型声明
a: str = 'hello'
首次使用 = 相当于对变量进行赋值(初始化),后续再对变量使用 = 相当于修改变量的内容。
2.1变量赋值
Python 中的变量赋值不需要类型声明。每个变量在内存中创建,包括变量的标识、名称和数据信息。变量在使用前必须赋值,赋值后才会被创建。等号 = 用来给变量赋值。允许同时为多个变量赋值:a = b = c = 1(三个变量被分配到相同的内存空间上)
counter = 100 # 赋值整型变量
miles = 1000.0 # 浮点型
name = "John" # 字符串print counter
print miles
print name
为多个对象指定多个变量:两个整型对象 1 和 2 分别分配给变量 a 和 b,字符串对象 "john" 分配给变量 c。
a, b, c = 1, 2, "john"
2.2数据类型
Python五个数据类型:
Numbers(数字)、String(字符串)、List(列表)、Tuple(元组)、Dictionary(字典)
布尔类型和整数类型进行算术运算(True为1,False为0)
python中只有字符串(单双引号都可表示)类型,没有字符类型
(1)Numbers数据类型
是不可改变的数据类型,当指定一个值时,Number 对象就会被创建,用于存储数值:包含如下四种:
- 整型(Int) :整型或整数,是正或负整数,不带小数点。(表示的数据范围无穷,int会根据数据大小自动扩容),故python中无short\byte这些类型
- 浮点型(floating point real values):由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250),python中float等同于Java/C++里的双精度double
- 复数(complex numbers) :复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。
- 长整型可用小写 l,建议大写 L,避免与数字 1 混淆。Python使用 L 来显示长整型。
- Python 支持复数,复数由实数部分和虚数部分构成,可以用 a + bj,或者 complex(a,b) 表示, 复数的实部 a 和虚部 b 都是浮点型。
可使用del语句删除一些对象的引用。del语句的语法是:
del var1[,var2[,var3[....,varN]]]
可通过使用del语句删除单个或多个对象的引用。例如:
del var
del var_a, var_b
(2)字符串
字符串或串(String)是由数字、字母、下划线组成的一串字符。编程语言中表示文本的数据类型。
若有字符串嵌套,内外分别用单双区分就行了:(三引号使用同上,三者关系等效)
b = "'hello' python!!!"
c = 'hello "python"'
print(b,c)
python的字串列表有2种取值顺序:
- 从左到右索引默认0开始的,最大范围是字符串长度少1
- 从右到左索引默认-1开始的,最大范围是字符串开头
截取字符串字串 [头下标:尾下标 ] 前闭后开
加号(+)是字符串连接运算符(拼接功能,不同数据类型不能进行拼接),星号(*)是重复操作
str = 'Hello World!'
print str # 输出完整字符串H
print str[0] # 输出字符串中的第一个字符 H
print str[2:5] # 输出字符串中第三个至第六个之间的字符串 llo
print str[2:] # 输出从第三个字符开始的字符串 llo world!
print str * 2 # 输出字符串两次 Hello World!Hello World!
print str + "TEST" # 输出连接的字符串Hello World!TEST
列表截取可以接收第三个参数,参数作用是截取的步长 [ 1: 4 :2 ] 步长为2
(3)List列表
List(用 [ ] 标识)是Python 中使用最频繁的数据类型。是 python 最通用的复合数据类型。可以完成大多数集合类的数据结构实现,支持字符,数字,字符串甚至可以包含列表(即嵌套)。下标可以为空表示取到头或尾。
list = ['runoob', 786 , 2.23, 'john', 70.2]
tinylist = [123, 'john']print list # 输出完整列表 ['runoob', 786 , 2.23, 'john', 70.2]
print list[0] # 输出列表的第一个元素 runoob
print list[1:3] # 输出第二个至第三个元素 [786 , 2.23]
print list[2:] # 输出从第三个开始至列表末尾的所有元素 [2.23, 'john', 70.2]
print tinylist * 2 # 输出列表两次 [123, 'john', 123, 'john']
print list + tinylist # 打印组合的列表 ['runoob', 786 , 2.23, 'john', 70.2,123, 'john']
列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。
list列表中常用方法:
(4)元组tuple
元组(用 () 标识)。类似List,内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。(不能修改)
元组中只包含一个元素时,需要在元素后面添加逗号,如: tup1 = (50,)
元组中的元素值不允许删除,但可使用del语句来删除整个元组:del tup
元组之间可以使用 + 号和 * 号进行运算。可以组合和复制,运算后会生成一个新的元组。
(5)字典dict
字典(用"{ }"标识),是除列表以外最灵活的内置数据结构类型。是一种可变容器模型,可存储任意类型对象。 键唯一(不可重复,否则后出现的会替换前者),值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。
列表是有序的对象集合,字典是无序的对象集合。字典中的元素是通过键来存取(键值对key-value),而不是通过偏移存取。
字典能删单一的元素也能清空字典:
tinydict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}del tinydict['Name'] # 删除键是'Name'的条目
tinydict.clear() # 清空字典所有条目
del tinydict # 删除字典
dict = {}
dict['one'] = "This is one"
dict[2] = "This is two"tinydict = {'name': 'runoob','code':6734, 'dept': 'sales'}print dict['one'] # 输出键为'one' 的值 This is one
print dict[2] # 输出键为 2 的值 This is two
print tinydict # 输出完整的字典 {'name': 'runoob','code':6734, 'dept': 'sales'}
print tinydict.keys() # 输出所有键 ['dept', 'code', 'name']
print tinydict.values() # 输出所有值 ['sales', 6734, 'runoob']
2.3数据类型转换
对数据内置的类型进行转换,只需要将数据类型作为函数名即可。这些函数返回一个新的对象,表示转换的值。
三、运算符
Python语言支持以下类型的运算符:
浮点数(遵循IEEE754标准),在此标准下,在内存中表示浮点数的时候,会存在微小误差。
3.1算数运算符(+-*/)
整数 / 整数 :结果可以是小数
%:取余(余数一定小于除数)
//:地板除法(向下取整)取小,如:7 // 2 = 3; -7 // 2 = -4
print(4**2) #**表示乘方=16
print(4**0.5) # 也可表示根号print(4**4) #**表示乘方=256
3.2关系运算符
关系表达式的值为布尔类型(true / false)
字典序:也可进行比较(字母在前相当于数值更小,如果·:hello < world ,输出true)
注意!!! print(0.1+0.2 == 0.3),输出false
判断a-b 的差是否是一个非常小的数字,是否在误差范围之内·(python支持连续小于的写法,其他语言不支持)
print(-0.000001 < (a -b)< 0.000001)
3.3赋值运算符
python不支持++(--)这样的自增自减操作。(--apython中为a(负负得正))
一般不使用链式赋值(a = b = 20, 先把20赋值给b,再把b的值赋给a )
多元赋值,一步完成交换:
a = 1
b = 2
a,b = b,a
print(a,b) # 输出 2 1
3.4位运算符
3.5逻辑运算符
and:两个必须为真(一假则假)
or:一真则真
a = 10
b = 20
c = 30
print(a < b and b < c) #True 等同于print(a < b < c)
print(a < b and b > c) # Falseprint(a > b or b < c) # #True
print(a < b or b > c) # #True
print(a > b or b > c) # False
短路求值:
对于大多数语言都有短路求值,如C/C++/Java
对于and操作:若左侧为false,整体一定是false,右侧表达式不必求值
对于or操作:若左侧为true,整体一定是true
a = 10
b = 20
print(a > b and 10 / 0 == 1) # (短路求值)输出false,因为a > b不成立为假,故整个表达式为假,不执行后面操作,故输出false
print(a < b and 10 / 0 == 1) # 编译报错,右边除数不能为0 a < b 成立,继续判断右边表达式是否成立,
3.6成员运算符
3.7身份运算符
3.8运算符优先级
四、python模块介绍
Python 中数学运算常用的函数基本都在 math、cmath 模块中。 math 模块提供了许多对浮点数的数学运算函数。cmath 模块包含了一些用于复数运算的函数。使用 math 或 cmath 函数必须先导入:import math/cmath
4.1 python 数学函数:
var1 = 'Hello World!'
var2 = "Python Runoob"print ("var1[0]: ", var1[0])
print ("var2[1:5]: ", var2[1:5])
4.2随机函数
随机数可以用于数学,游戏,安全等领域中,还经常被嵌入到算法中,用以提高算法效率,并提高程序的安全性。
4.3字符串转义字符
Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用。Python 访问子字符串,可以使用方括号来截取字符串
在需要在字符中使用特殊字符时,python 用反斜杠 \ 转义字符
4.4 Python 字符串格式化
格式化字符串:f - string ( f 表示format )
a = 10
b = "'hello' python!!!"
c = 'hello "python"'
print(b,c) # 'hello' python!!! hello "python"print(f"a = {a}") # 输出 a = 10
print(f"b = {b}") # 输出b = 'hello' python!!!
print(f"b = {b+c}") #'hello' python!!!hello "python"
Python 支持格式化字符串的输出 。但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中。
print ("My name is %s and weight is %d kg!" % ('Zara', 21)) #My name is Zara and weight is 21 kg!
python 字符串格式化符号:
【python】基础语法相关推荐
- Python基础语法学习笔记
Python基础语法学习笔记 想淘宝省钱看我简介,博客www.liangxin.name (一) 一.Print()函数 1.数字可以直接输出,无需加引号 只能理解数字,却读不懂文字.因为数字和数学运 ...
- 吾八哥学Python(四):了解Python基础语法(下)
咱们接着上篇的语法学习,继续了解学习Python基础语法. 数据类型 大体上把Python中的数据类型分为如下几类:Number(数字),String(字符串).List(列表).Dictionary ...
- Python 基础语法_Python脚本文件结构
目录 目录 前言 软件环境 Python Script文件结构 导入模块的流程 Python的包package 最后 前言 Python基础语法这一章,主要记录了Python的文件结构.逻辑运算符.算 ...
- python使用缩进作为语法边界-重庆铜梁高校邦数据科学通识课【Python基础语法】答案...
重庆铜梁高校邦数据科学通识课[Python基础语法]答案it8p 重庆铜梁高校邦数据科学通识课[Python基础语法]答案 关注公众号{帅搜}即可查询答案 支持:网课,智慧树,知到,超星,尔雅,学习通 ...
- python基础语法 第0关print-徐州鼓楼高校邦数据科学通识课【Python基础语法】答案...
徐州鼓楼高校邦数据科学通识课[Python基础语法]答案it8p 徐州鼓楼高校邦数据科学通识课[Python基础语法]答案 关注公众号{帅搜}即可查询答案 支持:大学网课,智慧树,知到,超星,尔雅,学 ...
- python基础语法 第0关print-重庆酉阳高校邦数据科学通识课【Python基础语法】答案...
重庆酉阳高校邦数据科学通识课[Python基础语法]答案it8p 重庆酉阳高校邦数据科学通识课[Python基础语法]答案 关注公众号{帅搜}即可查询答案 支持:大学网课,智慧树,知到,超星,尔雅,学 ...
- python基础语法 第0关print-温州文成高校邦数据科学通识课【Python基础语法】答案...
温州文成高校邦数据科学通识课[Python基础语法]答案it8p 温州文成高校邦数据科学通识课[Python基础语法]答案 关注公众号{帅搜}即可查询答案 支持:网课,智慧树,知到,超星,尔雅,学习通 ...
- 基于python物流管理系统毕业设计-长白高校邦数据科学通识课【Python基础语法】答案...
长白高校邦数据科学通识课[Python基础语法]答案it8p 长白高校邦数据科学通识课[Python基础语法]答案 关注公众号{帅搜}即可查询答案 支持:网课,智慧树,知到,超星,尔雅,学习通,选修课 ...
- python代码块所属关系的语法-天元高校邦数据科学通识课【Python基础语法】答案...
天元高校邦数据科学通识课[Python基础语法]答案it8p 天元高校邦数据科学通识课[Python基础语法]答案 关注公众号{帅搜}即可查询答案 支持:大学网课,智慧树,知到,超星,尔雅,学习通,选 ...
- python语法基础学习-Python基础语法精心总结!看完都知道的可以往下继续学习了...
原标题:Python基础语法精心总结!看完都知道的可以往下继续学习了 这应该是最详细的Python入门基础语法总结! 定义变量,使用变量 1. input 用户自己输入值 2. print 打印值 可 ...
最新文章
- JavaScript获取节点类型、节点名称和节点值
- 就差一点点-微妙的强制类型转换
- lnmp的编译安装mysql_LNMP环境搭建(二) 编译安装MySQL
- Python爬取大量数据时防止被封IP
- js 实现网页显示倒计时
- 使用SecureCRT时屏幕僵死的处理方法——Linux终端设置技巧
- node 修改文件自启动
- mysql 360怎么安装_mysql 5.7 安装配置方法图文教程
- Python数据结构与算法(3.5)——双端队列
- 预处理,编译,汇编,链接程序的区别
- ruby 1.9.3 字符和asscii转换
- r语言集合补集_极速统计教程之八 | 概率和集合
- 华为第1书:《华为交换机学习指南》当当网预售中
- 中标麒麟linux系统安装打印机_安装国产Linux中标麒麟操作系统教程
- Tara APP隐私政策
- 通过access口加vlan标签吗_浅谈-华为vlan下access、trunk、hybrid的配置及标签分析
- PanoSim 5 功能模块简介--PanoExp
- 详述break、return、continue的区别
- 金弘同创怎么样:拼多多获取奖励金的办法
- 为什么onenote一直在加载_用OneNote打造全平台的数字笔记本
热门文章
- 简述Handler机制原理
- handler机制详解
- jmp连mysql_JMP官方教学视频列表
- oracle用命令导入dmp,Oracle导出导入dmp文件(exp.imp命令行)
- Java虚拟机栈和本地方法栈
- ong拼音汉字_拼音ong的正确发音
- 分层总和法matlab,高填方路基沉降检测之回归法
- 【ARM 】CMSIS
- 苹果电脑python编程里面怎么切到中文_苹果电脑输入法怎么切换到中文
- SQL保姆级教程来了,0基础怎么快速上手sql?面试官会从哪些方面考sql?(看完你就能5天掌握SQL要点)...