Python 初学者必备的常用内置函数

Win10系统内存占用异常飙升?三步排查法快速定位问题根源 本文针对Win10系统内存占用异常飙升问题,提供了一套三步排查法。首先利用任务管理器和资源监视器进行深度系统体检,定位隐形内存消耗者;其次通过干净启动和禁用非必要后台服务,揪出导致内存泄漏的第三方软件或驱动;最后进行终极深度清理,包括检查内存完整性、调整虚拟内存设置以及更新关键驱动程序,帮助用户快速恢复系统流畅运行。 阅读详情

Python 作为一门高级编程语言,为我们提供了许多方便易用的内置函数,节省了不少开发应用的时间。目前,Python 3.7 共有 69 个内置函数,一些是我们耳熟能详的函数,另一些却不是很常见,这里主要介绍一些新手必备函数及其用法。

为了便于说明,我把这些内置函数粗略地分为六大类:

输入输出print() open()  input()
迭代相关enumerate()  zip()
序列属性sum()  max()  min()  len()
操作序列sorted()  reversed()  range()
对象属性dir()  id()  isinstance()  type()
映射类型eval()  map()  slice()

   

输入输出

print 函数将对象输出至控制台

print(*objects, sep=' ', end='\n', file=
sys.stdout, flush=False)

*objects 为可变参数,可以接受任意多个对象。sep 参数表示输出对象之

间的分隔符,默认为空格。

>>> print('Python', '高效编程')
Python 高效编程

分隔符为'*':

>>> print('Python', '高效编程', sep = '*')
Python*高效编程

格式化输出字符串的三种方式:

name = 'Python高效编程'
fmt1 = f'公众号:{name}'
fmt2 = '公众号:{}'.format(name)
fmt3 = '公众号:%s' %name
print(fmt1)
print(fmt2)
print(fmt3)
# 公众号:Python高效编程

open 函数打开文件并返回文件对象

open(file, mode='r', buffering=-1, 
encoding=None, errors=None, newline=
None, closefd=True, opener=None)

file 为文件地址,mode 为打开文件的模式,默认为 'r',表示读取文件,常用的还有:'w' 表示写入文件、'b' 表示以二进制形式打开。

常用上下文管理器 with 打开文件,f.read( ) 读取全部内容,f.readline() 读取一行内容。

with open('test.txt', 'r') as f:
    text1 = f.read()

with open('test.txt', 'r') as f:
    text2 = ''
    line = f.readline()
    while line:
        text2 += line
        line = f.readline()

assert text1 == text2
print(text1)

###############
输出内容:
Python 高效编程
Python 高效编程
Python 高效编程
Python 高效编程
###############

有时候,我们读取文件还会遇到乱码问题,可以指定编码格式:

当文件中有中文的时候,使用 'utf-8' 编码会导致异常:UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb8 in position 7: invalid start byte

with open('test.txt', 'r', 
       encoding='utf-8') as f:
    text1 = f.read()

 这时候,我们可以尝试 'gb2312' 或者 'gbk' 编码来打开含有中文字符的文件。这时,便可以成功打开文件。

with open('test.txt', 'r', 
       encoding='gb2312') as f:
    text1 = f.read()

with open('test.txt', 'w', 
       encoding='gbk') as f:
    f.write('Python高效编程')

input 函数获取控制台输入

input([prompt])

input 可接受字符串为参数,提示用户输入。   

>>> s = input('请输入公众号名称:')
请输入公众号名称:Python高效编程
>>> s
'Python高效编程'

迭代相关

enumerate 函数返回元素的序号与对应值


enumerate(iterable, start=0)

iterable 参数表示可迭代对象,start 参数是元素序号的起点,默认为 0。

enumerate 函数的等价形式如下:

def enumerate(sequence, start=0):
  n = start
  for elem in sequence:
      yield n, elem
      n += 1

seq = ['P', 'y', 't', 'h', 'o', 'n']
for i, elem in enumerate(seq):
   print(i, elem)

zip 函数用于同时迭代多个对象

zip(*iterables)

*iterable 可以接受任意多个可迭代对象

a = ["**", '**', '**']
b = ['微信公众号', '关注', 'Python高效编程']
c = a
print('#'*20)
for i, j, k in zip(a, b, c):
    print(i, j, k)
print('#'*20)


####################
** 微信公众号 **
** 关注 **
** Python高效编程 **
####################

序列属性

序列最大值:max

序列最小值:min

序列的和:   sum

序列长度:   len

基本用法:向这四个函数中传入序列,可以得到对应属性。

import random
random.seed(21)
seq = [random.randint(0, 100) for i in range(10)]
print(seq)
# [21, 53, 88, 53, 81, 36, 61, 27, 60, 65]
print(max(seq))
# 88
print(min(seq))
# 21
print(sum(seq))
# 545
print(len(seq))
# 10

作为内置函数,可以直接传入生成器(不需要括号)作为参数:

import random
random.seed(21)
num = max(random.randint(0, 100) for i in range(10))
print(num)
# 88

可传入 key 参数,作为比较大小的依据,相当于把序列中每一个元素 item 先传入函数 key 中,将函数返回的数值作为判断对象大小的依据。

def foo(x):
    return 1. / x
max(seq, key = foo)
# 21

对于我们自定义的类型,必须实现特殊方法,才能进行 len 等操作。

__len__ 代表:len 操作,__eq__ 代表:= 操作,__lt__ 代表 < 操作。

class foo:
    def __init__(self, num, seq):
        self.num = num
        self.seq = seq
        
    def __len__(self):
        return len(self.seq)
        
    def __eq__(self, other):
        return self.num == other.num
        
    def __lt__(self, other):
        return self.num < other.num

>>> f1 = foo(18, [1, 4, 6])
>>> f2 = foo(21, [1, 7, 9, 10])
>>> f1 < f2
True
>>> f1 > f2
False
>>> f1 == f2
False
>>> f3 = foo(18, [9, 9, 0, 7])
>>> f1 == f3
True
>>> len(f1)
3
>>> len(f2)
4

操作序列

    range 函数生成序列

range(start, stop[, step])
  • start 可选参数,默认为 0 ,表示序列起点

  • stop 必选参数,表示序列终点,不包括终点

  • step 可选参数,序列的步长,默认为 1

>>> range(6)
range(0, 6)
>>> list(range(6))
[0, 1, 2, 3, 4, 5]
>>> list(range(0, 6, 2))
[0, 2, 4]

range 函数生成的对象可以迭代,和列表很类似,_ 表示废弃变量(为了避免污染变量环境):

for _ in range(3):
  print('Python高效编程')

reversed 函数可以将序列逆置


reversed 可以将序列逆置,包括元组、字符串、列表。对于列表和字符串的逆置,使用 list[::-1] 或者slice()更加方便。

import random
random.seed(21)
seq = [random.randint(0, 100) for i in range(10)]
print(seq)
# [21, 53, 88, 53, 81, 36, 61, 27, 60, 65]
reversed(seq)
print(list(reversed(seq)))
# [65, 60, 27, 61, 36, 81, 53, 88, 53, 21]

 字符串逆置:

>>> a = 'Python高效编程'
>>> a[::-1]
'程编效高nohtyP'
>>> ''.join(reversed('Python高效编程'))
'程编效高nohtyP'

sorted 函数可以对序列进行排序

sorted(iterable, *, key=None, reverse=False)

sorted 不同于 list.sort 操作(原地排序),返回一个新的有序序列,原序列保持不变。* 表示仅限关键字参数(keyword-only),也就是说,key、reverse 参数只能通过关键字传参,而不能通过位置传参。reverve 参数表示逆置操作,key 与之前 len 中的 key 参数类似,是函数排序的依据。 

>>> sorted([9, 6, 2, 3, 6])
[2, 3, 6, 6, 9]

对象属性

dir 函数返回属性列表

id  函数返回对象地址

isinstance  判断对象的类型

type 返回对象的类型

class foo:
    pass

>>> dir(foo)
['__class__',
 '__delattr__',
 '__dict__',
 '__dir__',
......
 '__str__',
 '__subclasshook__',
 '__weakref__']
# 创建实例
>>> f = foo()
>>> type(foo)
__main__.foo
>>> isinstance(f, foo)
True
>>> id(f)
2135099584864

映射类型

eval 解除引号的束缚

map 应用函数于单个对象

slice 生成切片


eval 可以去除字符串的单引号,从而获取引号内部内容。下面的演示展示了,如何使用 eval 函数获取字符串中的字典:

>>> info = '{"name": "LiHua", "age": 12}'
>>> eval(info)
{'name': 'LiHua', 'age': 12}
>>> info_dict = eval(info)
>>> type(info_dict)
dict

map 将传进来的函数应用于序列中的每一个元素,并返回迭代器。

map(function, iterable, ...)

举例来说,map 就是对 seq 列表中的每一个元素 item 进行 int 操作(int(item))。匿名函数同理,就是对序列中的每一个元素进行加 2 的操作。

>>> seq = [1.5, 4.5, 9.1]
>>> list(map(int, seq))
[1, 4, 9]
>>> list(map(lambda x: x + 2, seq))
[3.5, 6.5, 11.1]

slice 函数为切片操作命名,使得切片操作更加清晰明了。

slice(start, stop[, step])

start 为起点,stop 为终点,step 为步长。使用该操作,使得截取有规律的文本内容变得很轻松。特别是长文本,使用 slice 函数更加清晰易懂。

>>> text = '微信公众号 Python高效编程'
>>> name = slice(0, 6)
>>> text[name]
微信公众号 
>>> content = slice(6, 16)
>>> text[content]
Python高效编程

这篇文章到此结束了,大家可以趁热打铁,多多练习。


● 80%的人都不知道,全球Python库下载前10名

● 我珍藏的一些好的Python代码,技巧|上篇

● 爬取300本Python书籍,用Python告诉你哪家强?

● 简单几步,100行代码用Python画一个蝙蝠侠的logo

● 我用Python分析了《青春有你2》109位漂亮小姐姐,真香!

点击阅读原文,原创400篇干货文章

ECB oracle——attack 基于ECB oracle的攻击方案前言什么是ECB方案步骤1.确定块大小和明文大小2.暴力破解求明文脚本代码 前言 参考文章:Breaking ECB by prepending your own message. 环境地址:ECB oracle 什么是ECB 分组密码中AES的一种模式(其他还有:CBC、ECB、CTR、OCF、CFB)如图每一块加密是分开的。 方案步骤 1.确定块大小和明文大小 先用一个字符"a"去encrypt返回32个字节的数据(64位16进制)依次用"aa",“aaa”…去en 阅读详情

相关推荐

llama.cpp部署大模型

llama.cpp如何部署大模型

Eddy的博客 983

Python中 6个常用公共方法 —— len()、del、max()、min()、range()、enumerate()

所谓公共方法指的是我们之前学到过的容器类型如列表、元组、字符串等都可以使用的一些公共函数,这里只列举了6个比较常用的方法,如len()、del、max()、min()、range()、enumerate()。含义:函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在for循环当中。函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在for循环当中。语法: max(目标) 、 min(目标)

m0_64829783的博客 1万+

Elsevier投稿避坑指南:Ocean Engineering论文格式要求详解(附Checklist模板)

本文详细解析Elsevier旗下期刊Ocean Engineering的投稿格式要求与常见陷阱,提供实用的Checklist模板。涵盖文章类型确认、作者贡献声明、图表规范、数据声明等关键环节,帮助研究者高效通过格式审查。特别强调LaTeX排版细节、图表分辨率要求及现代伦理声明规范,助力海洋工程领域学者顺利投稿。

weixin_33734785的博客 1506

Python中的len()函数

函数:len() 1:作用:返回字符串、列表、字典、元组等长度 2:语法:len(str) 3:参数: str:要计算的字符串、列表、字典、元组等 4:返回值:字符串、列表、字典、元组等元素的长度 5:实例 5.1、计算字符串的长度: >>> s = "hello good boy doiido" >>> len(s) 21 5.2、计算列表的元...

qq_40723205的博客 2万+

【专业书1】量化交易——从入门到精通

股票季节性策略几乎失效了,但商品期货的仍有效,因为其季节性需求源于真实的经济需求而非投机。交易策略获利的前提:交易价格处于均值回归(低价时买入)或动量状态(降价时先做空后以更低价买入),否则在随机游走状态下是无法有效交易的。构建交易策略实际上是在决定:在特殊条件、特定时间尺度下价格趋势的呈现(均值回归/趋势走势),以及用什么价格作为初始判断的参考价格。如果以高夏普比率为目标,需要更高的交易频率:基于大数定律,押注越多,偏离均值收益的偏差就越小。买同比最好的股票,卖同比最差的股票。但在不同的时间尺度下可以。

weixin_44589682的博客 1552

3D Gaussian Splatting环境配置和运行

使用conda命令根据environment.yml文件创建虚拟环境时,安装的pytorch是使用conda install 命令来安装的,实际上并不能成功安装带有gpu的pytorch,而这两个模块的安装依赖于带gpu的pytorch。如果不注释掉这三行,直接安装会报错

m0_46360757的博客 3326

python中len 函数_python len

广告关闭腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元!在python中除了print函数之外,len函数和type函数应该算是使用最频繁的api了,操作都比较简单。 一.len函数简介返回对象的长度(项目数)参数可以是序列(例如字符串str、元组tuple、列表list)或集合(例如字典dict、集合set或冻结集合frozenset)...

weixin_39835925的博客 5731

Solidworks在Windows 11上安装失败?这里有解决方案

通过上述步骤,你应该能够解决在Windows 11上安装Solidworks时遇到的问题。这个方法通过调整注册表的设置,提高了安装程序的权限,从而有效避免了安装过程中的权限障碍。当然,每个系统的具体情况可能有所不同,如果在尝试上述方法后仍然无法解决问题,建议联系Solidworks的技术支持团队,获取更专业的帮助。希望本文能够对你有所帮助,祝你工作顺利,设计无忧!

nntxthml的博客 4915

Python内置函数len()详解

Python内置函数len()详解

嘻嘻爱编码的博客 6561

电磁场仿真软件:CST Studio Suite_(25).案例分析与实践

在电磁场仿真中,材料属性的设置至关重要。通过API,您可以轻松地设置和修改材料属性,以适应不同的仿真需求。通过以上案例分析和实践,您已经学会了如何在CST Studio Suite中进行二次开发。自动化仿真流程:批量创建和运行仿真项目、优化设计参数、生成报告。自定义仿真设置:设置材料属性、边界条件和激励源。数据处理与分析:读取仿真结果、数据可视化和数据导出。高级脚本开发:多线程仿真、集成机器学习和云仿真。这些技能将帮助您更高效地进行电磁场仿真,提高设计质量和工作效率。

kkchenjj的博客 1387

【存储原理】IO超时处理 块层block-scsi层之间

【存储原理】IO超时处理 块层block-scsi层之间

sinat_37817094的博客 1025

Python-VBA函数之旅-len函数

len函数

ygb_1024的博客 3032

SSH 远程登录报错:kex_exchange_identification: Connection closed.....

不知道为啥会出现这样的情形,最近这段时间登录都是正常的,不知道哪里抽风了,就提示这个。错误信息 kex_exchange_identification: Connection closed by remote host 出现在尝试使用 SSH 连接到远程服务器过程中,表明在密钥交换阶段的一开始,远程主机就关闭了连接。服务器的sshd_config文件中配置错误,可能是不允许的加密算法、修订文件中的语法错误,或者未正确指定用于SSH的HostKey。如果当前已有太多活动连接,新的连接尝试可能会被拒绝。

飞越蓝天的专栏 8301

python中常用的内置函数有哪些_Python 初学者必备的常用内置函数

Python 作为一门高级编程语言,为我们提供了许多方便易用的内置函数,节省了不少开发应用的时间。目前,Python 3.7 共有 69 个内置函数,一些是我们耳熟能详的函数,另一些却不是很常见,这里主要介绍一些新手必备函数及其用法。为了便于说明,我把这些内置函数粗略地分为六大类:输入输出 print() open() input()迭代相关 enumerate() zip()序列属性 sum...

weixin_39531229的博客 2853

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

inrange函数_Python 初学者必备的常用内置函数

本文纲要Python 作为一门高级编程语言,为我们提供了许多方便易用的内置函数,节省了不少开发应用的时间。目前,Python 3.7 共有 69 个内置函数,一些是我们耳熟能详的函数,另一些却不是很常见,这里主要介绍一些新手必备函数及其用法。为了便于说明,我把这些内置函数粗略地分为六大类:输入输出print() open() input()迭代相关enumerate() zip()序列属性sum(...

weixin_29213827的博客 3192

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

class传参 python_Python 初学者必备的常用内置函数

本文纲要Python 作为一门高级编程语言,为我们提供了许多方便易用的内置函数,节省了不少开发应用的时间。目前,Python 3.7 共有 69 个内置函数,一些是我们耳熟能详的函数,另一些却不是很常见,这里主要介绍一些新手必备函数及其用法。为了便于说明,我把这些内置函数粗略地分为六大类:输入输出print() open() input()迭代相关enumerate() zip()序...

weixin_42299396的博客 199

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

python常用函数及使用方法_Python 初学者必备的常用内置函数

本文纲要Python 作为一门高级编程语言,为我们提供了许多方便易用的内置函数,节省了不少开发应用的时间。目前,Python 3.7 共有 69 个内置函数,一些是我们耳熟能详的函数,另一些却不是很常见,这里主要介绍一些新手必备函数及其用法。为了便于说明,我把这些内置函数粗略地分为六大类:输入输出: print() open() input()迭代相关: enmuerate() zip()序列属性...

weixin_29079643的博客 399

pythontext函数用法汇总_Python 初学者必备的常用内置函数

原标题:Python 初学者必备的常用内置函数 本文纲要Python 作为一门高级编程语言,为我们提供了许多方便易用的内置函数,节省了不少开发应用的时间。目前,Python 3.7 共有 69 个内置函数,一些是我们耳熟能详的函数,另一些却不是很常见,这里主要介绍一些新手必备函数及其用法。 为了便于说明,我把这些内置函数粗略地分为六大类:输入输出print open input迭代相关enumer...

weixin_39840635的博客 1682

python len函数_Python 初学者必备的常用内置函数

本文纲要Python 作为一门高级编程语言,为我们提供了许多方便易用的内置函数,节省了不少开发应用的时间。目前,Python 3.7 共有 69 个内置函数,一些是我们耳熟能详的函数,另一些却不是很常见,这里主要介绍一些新手必备函数及其用法。为了便于说明,我把这些内置函数粗略地分为六大类:输入输出print() open() input()迭代相关enumerate() zip()序...

weixin_39769675的博客 287

python3 open函数_Python 初学者必备的常用内置函数

本文纲要Python 作为一门高级编程语言,为我们提供了许多方便易用的内置函数,节省了不少开发应用的时间。目前,Python 3.7 共有 69 个内置函数,一些是我们耳熟能详的函数,另一些却不是很常见,这里主要介绍一些新手必备函数及其用法。为了便于说明,我把这些内置函数粗略地分为六大类:输入输出 print() open() input()迭代相关 enumerate() zip()...

weixin_39811842的博客 165

open函数返回-1_Python 初学者必备的常用内置函数

本文纲要Python 作为一门高级编程语言,为我们提供了许多方便易用的内置函数,节省了不少开发应用的时间。目前,Python 3.7 共有 69 个内置函数,一些是我们耳熟能详的函数,另一些却不是很常见,这里主要介绍一些新手必备函数及其用法。为了便于说明,我把这些内置函数粗略地分为六大类:输入输出 print() open() input() 迭代相关 enumerat...

weixin_39766014的博客 213

python 的内置函数

Python的内置函数 - 数学相关: abs/ divmod/ pow / round / min / max / sum - 序列相关: len / range / next / filter / map / sorted / slice / reversed - 类型转换: chr / ord / str / bool / int / float / complex / bin / oct...

qq_34783484的博客 413

Python 内置函数(Python 3.x)

1、type(obj):返回变量类型 2、isinstance(object, class_or_type_or_tuple):测试对象是否为指定类型的实例 3、id():返回变量所指值的内存地址 4、range([start,] end[, step]):返回一个 [start, end) 内的 range 对象,start 默认为 0,step 默认为 1 5、ord(s):返回一个字...

qq_42587113的博客 1656

Python关键字和内置函数总结以及含义用法

转载自说说 Python 关键字与内置函数以及Python关键字和内置函数介绍 1 关键字 这些关键字都有特殊的含义, 如果我们将它们用作变量名, 就会引发错误: 1)and:逻辑与 2)as:为导入的模块取一个别名,在Python2.6中新增 3)assert:断言,在Python1.5中新增 4)break:用在循环语句,跳转到语句块的末尾 5)class:用来定义一个类 ...

hey 7806
上一篇: 在拼多多上班,是一种什么样的体验?我tm心态崩了呀!
下一篇: 什么!Python还能帮你找老婆?
菜鸟学Python
博客等级 码龄9年 8088粉丝 571原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值