python基本语法学习记录

1     默认情况下,Python 3源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串。

2     Python中单行注释以#开头,多行注释用三个单引号(‘‘‘)或者三个双引号(""")将注释括起来。

3     python最具特色的就是使用缩进来表示代码块。缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。

4     自然字符串, 通过在字符串前加r或R。 如 r"this is a line with \n" 则\n会显示,并不是换行。

5     python允许处理unicode字符串,加前缀u或U

6     复合赋值:右边的表达式会在赋值变动之前执行。右边表达式的执行顺序是从左往右的。

7     Python中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

8     变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。

赋值、浅拷贝、深拷贝的区别:

参考https://www.cnblogs.com/wilber2013/p/4645353.html

浅拷贝效果:切片操作、工厂函数、copy.copy

深拷贝效果:copy.deepcopy

9     除法//:得到一个整数;乘方**

10  反斜杠可以作为续行符,表示下一行是上一行的延续。还可以使用"""..."""或者‘‘‘...‘‘‘跨越多行。

11  Python中的字符串有两种索引方式,第一种是从左往右,从0开始依次增加;第二种是从右往左,从-1开始依次减少。对字符串进行切片,获取一段子串。用冒号分隔两个索引,形式为变量[头下标:尾下   标]。

12  Python字符串不能被改变。对于不可变对象,其所谓的replace等操作实际上是返回了一个新的数据,在内存中开辟了新的位置。

13  列表是写在方括号之间、用逗号分隔开的元素列表。列表中元素的类型可以不相同。列表中的元素是可以改变的

14  元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号

里,元素之间用逗号隔开。

15 虽然tuple的元素不可改变,但它可以包含可变的对象,比如list列表。

16 集合(set)是一个无序不重复元素的集。可以使用大括号 或者 set()函数创建set集合,注意:创建一个空集合必须用 set() 而不是 { },因为{ }是用来创建一个空字典。

17 字典是一种映射类型(mapping type),它是一个无序的键 : 值对集合。

关键字必须使用不可变类型,也就是说list和包含可变类型的tuple不能做关键字。

在同一个字典中,关键字还必须互不相同。

18  Python3列表

写在方括号内,用逗号隔开。不必是相同的类型。支持嵌套

可以被索引和切片。切片返回的是一个拷贝。

支持+拼接操作;赋值[ ]即清空

.append()在末尾添加新项;修改指定区间值

使用len()统计长度

使用序列表达式 for  in 创建列表

在序列中遍历时,索引位置和对应值可以使用 enumerate() 函数同时得到

19  Python3 元组

写在小括号内,元素不能修改

元组只含一个元素,需要添加逗号(50,)

元组同样可以进行连接和复制;使用del 删除整个元组;

Tuple() 将列表转换为元组

20 Python3 字典

写在花括号内,可存储任意类型对象

d = {key1 : value1, key2 : value2 }

键值不可修改,可以用数字、字符串或元组充当,而列表不行;通过键值访问Value

构造函数 dict() 直接从键值对元组列表中构建字典

在字典中遍历时,关键字和对应的值可以使用 items() 方法同时解读出来

21 条件控制

If condition : 条件判断后需要加冒号

使用相同缩进区分代码块

没有switch-case语句

22 循环

While循环:冒号 缩进

For循环:

for <variable> in <sequence>:

<statements>

  else:

<statements>

Range(a,b,c) 产生a到b-1的数,以c为步长。默认a=0,c=1

循环中的else语句:循环终止时被执行,但被break终止时不执行

Pass语句

23 迭代器

iter() next()

迭代器只能往前不会后退。可以用于循环

生成器

生成器是一个使用了yield,返回迭代器的函数。

在调用生成器运行的过程中,每次遇到 yield 时函数会暂停并保存当前所有的运行信息,返回yield的值。并在下一次执行 next()方法时从当前位置继续运行。

24 函数

定义函数使用def关键字

       def 函数名(参数列表):

              函数体

变量的作用域

  默认参数:必须指向不变对象

在参数前加一个*号,将参数变为可变参数。这实际上是一个tuple。传入参数的时候可以传入任意个参数。

  函数也可以使用kwarg=value的关键字参数形式被调用 在参数前加**号。这些关键字参数在函数内部自动组装为一个dict。使用特殊分隔符*,后面的参数成为命名关键字参数。命名关键字参数必须传入参数名。

函数可以返回多个值(return x,y)实际上返回的是一个tuple

函数名也是变量。一个函数可以接收另一个函数作为参数为高阶函数。

25 格式化输入输出

Python使用print进行输出。使用逗号分割多个字符串,逗号输出为空格。

str(输出转化为字符串)repr().rjust\ljust\center()将字符串靠右、靠左、中间并填充空格。

使用str.format( )的参数替换字符串中括号及其里面的字符。

使用input()读取输入。注意返回的数据类型是str。使用数据转换函数将其转换为需要的类型。

26 文件读写

27 装饰器

接受一个函数作为参数,并返回一个函数。

使用@语法,可以将装饰器置于函数定义处

把@log放到now()函数的定义处,相当于执行了语句now = log(now)

28 偏函数

当函数的参数个数太多,需要简化时,使用functools.partial可以创建一个新的函数,这个新函数可以固定住原函数的部分参数,从而在调用时更简单。

时间: 2024-08-28 20:17:18

python基本语法学习记录的相关文章

《灰帽Python-黑客和逆向工程师的Python编程》学习记录

ctypes是Python语言的一个外部库,提供和C语言兼容的数据类型,可以很方便的调用C DLL中的函数. 操作环境:CentOS6.5 Python版本:2.66 ctypes是强大的,强大到本书以后介绍的几乎所有库都要基于此.使用它我们就能够调用动态链接库中函数,同时创建各种复杂的C数据类型和底层操作函数.毫无疑问,ctypes就是本书的基础. 第一章 搭建开发环境 1.3.2 使用动态链接库 from ctypes import * libc = CDLL("libc.so.6"

Markdown语法学习记录

记录一下Markdown的语法,方便以后使用. 先把转义符写在最前面,没有它写不来这篇日志 加入链接 [链接显示的内容](链接的Link) 比如我要连接这篇讲解Markdown语法的文章链接显示的内容还可以给链接加Title,就是鼠标放在连接上时显示的内容.链接显示的内容 加粗 斜体 加两个星号**或下划线__表示加粗 比如加粗 加粗加入一个星号*或一个下划线_表示斜体 斜体 _ 斜体_ 段落级别 # 一级标题 二级标题 ## 二级标题 三级标题 ### 三级标题 四级标题 #### 四级标题

Python模块章节学习记录

Python模块章节学习 Python里含有大量的标准模块和第三方模块,同时我们也可以自主定义模块. 1.自定义模块 自定义模块的形式为"模块名 + .py",且模块文件的扩展名必须是.py.一个模块中包含许多函数,在其他的程序中我们可以通过使用import和from--import语句导入模块. import可以一次引用多个模块,且可以将模块用as关键字进行重命名,这个对引用长名模块,可以提供便利.一旦使用import引用模块,则将该模块中的所有函数引用.from--import可以

python基础语法学习常见小问题

说明:我是最近觉得python在完成很多工作中方便使用而且功能强大,想突击学习一下.用的是廖雪峰老师的教程,学习python3.X.这里是廖雪峰老师的网站链接: http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000 本人用的windows学习python: 一.常见小的细节: 1.python中 elif 是else if的缩写: 2.python初始使用有交互式的,就是有>>>

python之爬虫学习记录与心得

之前在寒假的时候,学习了python基础.在慕课网上看的python入门:http://www.imooc.com/learn/177 python进阶:http://www.imooc.com/learn/317 其实好多知识都是学了忘,忘了学的. 最近因为要使用爬虫爬去数据和照片,所以现在开始学习网络爬虫. 爬虫架构:URL管理器,网页下载器,网页解析器 URL管理器:管理待抓取URL集合和已抓取URL集合 防止重复抓取. URL管理器实现方法: 缓存数据库:大公司,性能高 内存:个人,小公

python matplotlib.pyplot学习记录

matplotlib是python中很强大的绘图工具,在机器学习中经常用到 首先是导入 import matplotlib.pyplot as plt plt中有很多方法,记录下常用的方法 plt.plot()该方法用来画图,第一个参数是y值,第二个参数是x值,第三个参数是由两个值构成的字符串,第一个值是颜色,第二个值是线的类型 颜色的可选值有 ‘b’ blue ‘g’ green ‘r’ red ‘c’ cyan ‘m’ magenta ‘y’ yellow ‘k’ black ‘w’ whi

SQL语法学习记录——JOIN

学习内容参考来源:www.runoob.com JOIN准备 --为了方便练习,在数据库中创建演示数据: create database TEST; use TEST ; ---------- go --建立[网站信息表],可以视作基础资料表: create table website (id int primary key, name varchar(255), url varchar(255), alexa varchar(255), country varchar(255) ) inser

python基础语法学习

1.变量 在Python 中 我们不需要为变量指定数据类型.例如 a = 1 ,这样变量 abc 就是整数类型:a = 1.0 ,那么变量 abc 就是浮点类型:a='hello',那么变量abc为字符串. python中定义变量的时候字符串都用引号括起来,单引号和双引号没有区别,用啥都行,如果说这个字符串里面有单引号的话,那外面就用双引号,里面有双引号的话,外面就用单引号,如果既有单又有双,那么用三引号,三引号也可以多行注释代码,单行注释,使用#(代码注释快捷键ctrl+/) 注意: 变量名只

python核心编程学习记录之映射和集合类型

字典是python里唯一的映射类型