目录

一、基础语法

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】基础语法相关推荐

  1. Python基础语法学习笔记

    Python基础语法学习笔记 想淘宝省钱看我简介,博客www.liangxin.name (一) 一.Print()函数 1.数字可以直接输出,无需加引号 只能理解数字,却读不懂文字.因为数字和数学运 ...

  2. 吾八哥学Python(四):了解Python基础语法(下)

    咱们接着上篇的语法学习,继续了解学习Python基础语法. 数据类型 大体上把Python中的数据类型分为如下几类:Number(数字),String(字符串).List(列表).Dictionary ...

  3. Python 基础语法_Python脚本文件结构

    目录 目录 前言 软件环境 Python Script文件结构 导入模块的流程 Python的包package 最后 前言 Python基础语法这一章,主要记录了Python的文件结构.逻辑运算符.算 ...

  4. python使用缩进作为语法边界-重庆铜梁高校邦数据科学通识课【Python基础语法】答案...

    重庆铜梁高校邦数据科学通识课[Python基础语法]答案it8p 重庆铜梁高校邦数据科学通识课[Python基础语法]答案 关注公众号{帅搜}即可查询答案 支持:网课,智慧树,知到,超星,尔雅,学习通 ...

  5. python基础语法 第0关print-徐州鼓楼高校邦数据科学通识课【Python基础语法】答案...

    徐州鼓楼高校邦数据科学通识课[Python基础语法]答案it8p 徐州鼓楼高校邦数据科学通识课[Python基础语法]答案 关注公众号{帅搜}即可查询答案 支持:大学网课,智慧树,知到,超星,尔雅,学 ...

  6. python基础语法 第0关print-重庆酉阳高校邦数据科学通识课【Python基础语法】答案...

    重庆酉阳高校邦数据科学通识课[Python基础语法]答案it8p 重庆酉阳高校邦数据科学通识课[Python基础语法]答案 关注公众号{帅搜}即可查询答案 支持:大学网课,智慧树,知到,超星,尔雅,学 ...

  7. python基础语法 第0关print-温州文成高校邦数据科学通识课【Python基础语法】答案...

    温州文成高校邦数据科学通识课[Python基础语法]答案it8p 温州文成高校邦数据科学通识课[Python基础语法]答案 关注公众号{帅搜}即可查询答案 支持:网课,智慧树,知到,超星,尔雅,学习通 ...

  8. 基于python物流管理系统毕业设计-长白高校邦数据科学通识课【Python基础语法】答案...

    长白高校邦数据科学通识课[Python基础语法]答案it8p 长白高校邦数据科学通识课[Python基础语法]答案 关注公众号{帅搜}即可查询答案 支持:网课,智慧树,知到,超星,尔雅,学习通,选修课 ...

  9. python代码块所属关系的语法-天元高校邦数据科学通识课【Python基础语法】答案...

    天元高校邦数据科学通识课[Python基础语法]答案it8p 天元高校邦数据科学通识课[Python基础语法]答案 关注公众号{帅搜}即可查询答案 支持:大学网课,智慧树,知到,超星,尔雅,学习通,选 ...

  10. python语法基础学习-Python基础语法精心总结!看完都知道的可以往下继续学习了...

    原标题:Python基础语法精心总结!看完都知道的可以往下继续学习了 这应该是最详细的Python入门基础语法总结! 定义变量,使用变量 1. input 用户自己输入值 2. print 打印值 可 ...

最新文章

  1. JavaScript获取节点类型、节点名称和节点值
  2. 就差一点点-微妙的强制类型转换
  3. lnmp的编译安装mysql_LNMP环境搭建(二) 编译安装MySQL
  4. Python爬取大量数据时防止被封IP
  5. js 实现网页显示倒计时
  6. 使用SecureCRT时屏幕僵死的处理方法——Linux终端设置技巧
  7. node 修改文件自启动
  8. mysql 360怎么安装_mysql 5.7 安装配置方法图文教程
  9. Python数据结构与算法(3.5)——双端队列
  10. 预处理,编译,汇编,链接程序的区别
  11. ruby 1.9.3 字符和asscii转换
  12. r语言集合补集_极速统计教程之八 | 概率和集合
  13. 华为第1书:《华为交换机学习指南》当当网预售中
  14. 中标麒麟linux系统安装打印机_安装国产Linux中标麒麟操作系统教程
  15. Tara APP隐私政策
  16. 通过access口加vlan标签吗_浅谈-华为vlan下access、trunk、hybrid的配置及标签分析
  17. PanoSim 5 功能模块简介--PanoExp
  18. 详述break、return、continue的区别
  19. 金弘同创怎么样:拼多多获取奖励金的办法
  20. 为什么onenote一直在加载_用OneNote打造全平台的数字笔记本

热门文章

  1. 简述Handler机制原理
  2. handler机制详解
  3. jmp连mysql_JMP官方教学视频列表
  4. oracle用命令导入dmp,Oracle导出导入dmp文件(exp.imp命令行)
  5. Java虚拟机栈和本地方法栈
  6. ong拼音汉字_拼音ong的正确发音
  7. 分层总和法matlab,高填方路基沉降检测之回归法
  8. 【ARM 】CMSIS
  9. 苹果电脑python编程里面怎么切到中文_苹果电脑输入法怎么切换到中文
  10. SQL保姆级教程来了,0基础怎么快速上手sql?面试官会从哪些方面考sql?(看完你就能5天掌握SQL要点)...