Python小知识 | 这些技能你不会?(二)

简介: Python小知识 | 这些技能你不会?(二)

简说Python,号主老表,Python终身学习者,数据分析爱好者,从18年开始分享Python知识,原创文章227篇,写过Python、SQL、Excel入门文章,也写过Web开发、数据分析文章,老表还总结整理了一份2022Python学习资料和电子书资源,关注后私信回复:2022 即可领取。

Python小知识


最近在看《零压力学Python》,巩固一下基础知识,意外收获到很多常用却不一定被注意的小知识,分享给大家,学到东西了点赞支持哦~
第一篇:
点击这里查看第一篇python小技能

一、推导式

列表推导式是Python基础,好用,而又非常重要的功能,也是最受欢迎的Python特性之一。本质上可以把列表推导式理解成一种集合了变换和筛选功能的函数,通过这个函数把一个列表转换成另一个列表的过程

(1) 普通推导式

image.png

(2)二维推导式

image.png

Python中还有字典推导式、元组推导式、集合推导式等,与列表推导式使用方式大致相同。

列表推导式的使用非常广泛,从实际使用经验来看,列表推导式使用的频率是非常高的,也是相当好用的。不过对于多层for循环,复杂筛选条件的,使用列表推导式不一定好,因为这样虽然节省了代码量,但同时让人读起来和理解起来更加困难,这个时候建议直接用多个普通for循环方式实现就可以了。

二、enumerate 和 format 函

(1)enumerate 函数
基本介绍:enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
enumerate(sequence, start=0)

sequence -- 一个序列、迭代器或其他支持迭代对象。
start-- 下标起始位置,默认为0。

  • 基本使用

image.png

从上面可以看出,枚举后的,迭代出的单个对象为元组(tuple)。

  • 索引与值分开

image.png

(2)format函数

基本介绍:一种格式化字符串的函数 ,它增强了字符串格式化的功能。
基本语法是通过 {} 和 : 来代替以前的 % 。

format 函数可以接受不限个参数,位置可以不按顺序。

  • 基本操作

image.png

  • format的骚操作

image.png

  • 语法解析

image.png

三、文件操作

(1)open函数

python open() 函数用于打开一个文件,创建一个 file 对象,相关的方法才可以调用它进行读写。


open(name, mode, buffering)
nam为必填参数,其他选填

image.png

(2)读写文件

a.原文件内容:

image.png

原文件内容

b.文件目录:I:\123.txt

c.读文件

image.png

注意:这里也可以直接open生成IO流对象,不用with,但这个时候使用完,一定要记得close掉IO流,避免资源浪费。
d.写文件

image.png

注意:在写文件时,必须标注写格式"a+","r+","wb+"等,不然无法写入,如果不修改mode,默认为"r",只读,强制写入会报错io.UnsupportedOperation: not writable

(3)基本读写格式表

image.png

基本读写格式表

四、局部变量与全局变量

(1)局部变量与全局变量

局部变量只对该变量所在函数有效,不会影响或修改函数外面的同名变量,所以可以看作,局部变量优先于全局变量被使用。

示例:

image.png

可以明显看出,此时函数域与全局域中g_test不相同,虽然我们在函数sum里修改了g_test的值,但对全局变量g_test并没有影响。

(2)global关键字

global关键字,被global标记的变量表示为全局变量,另外global不会创建指定的变量,因此我们还是需要在某个地方创建该变量,可在全局域中给变量赋值定义,也可以在函数域中赋值定义。

示例:

image.png

可以明显看出,此时函数域与全局域中g_test相同了,也就是我们能在函数里操作全局变量了。

灵活应用这些基本操作,让你的工作学习事半功倍。

相关文章
|
2月前
|
数据安全/隐私保护 Python
经验大分享:python
经验大分享:python
12 0
|
3月前
|
数据可视化 数据挖掘 定位技术
Python实践项目
Python实践项目
49 2
|
Python
Python 数据科学 - python基础
Python 数据科学 - python基础
|
NoSQL 关系型数据库 MySQL
【21天python打卡】第8天 基础技能(1)
​大家好,今天是21天python打卡的第8天,上一篇讲了如何创建python如何创建类,抽象类,访问限制的说明。今天说说python的相关技能,比如将时间日期的处理,数据文件的读写,以及数据库的简单操作。
|
网络协议 数据库 Python
【21天python打卡】第9天 基础技能(2)
​​大家好,今天是21天python打卡的第9天,上一篇讲了python的相关技能,比如将时间日期的处理,数据文件的读写,以及数据库的简单操作。今天来说说源码打包和网络编程。
|
数据采集 人工智能 IDE
Python入门 Python自学路线 Python如何学习
Python入门 Python自学路线 Python如何学习
201 0
Python入门 Python自学路线 Python如何学习
|
存储 SQL 数据挖掘
Python小知识 | 这些技能你不会?(三)
Python小知识 | 这些技能你不会?(三)
157 0
Python小知识 | 这些技能你不会?(三)
|
SQL 数据挖掘 索引
Python小知识 | 这些技能你不会?(一)
Python小知识 | 这些技能你不会?(一)
Python小知识 | 这些技能你不会?(一)
|
SQL 数据挖掘 Java
Python小知识 | 这些技能你不会?(四)
Python小知识 | 这些技能你不会?(四)
Python小知识 | 这些技能你不会?(四)
|
存储 人工智能 Java
【python从零入门 | 01】系统化的认识python
Python目前有两个版本,Python2.x和Python3.x,最新版分别为2.7.14和3.6.3.IPython 是一个python的交互式shell,比默认的pythonshell好用得多,支持变量自动补全,自动缩进,支持bashshell命令,内置了许多很有用的功能和函数。..................
282 0
【python从零入门 | 01】系统化的认识python