当前位置: 首页 > news >正文

Python从0到POC编写--函数

数学函数:

1. len

len() 函数返回对象(字符、列表、元组等)长度或项目个数,

例如:


str = "python"
len(str)

images


2. range

range() 函数返回的是一个可迭代对象(类型是对象),而不是列表类型, 所以打印的时候不会打印列表

简单的讲就是生成数字的一个函数。

语法:

range(start, stop[, step])

参数:

  1. start: 开始,默认是从 0 开始。例如range(5)等价于range(0,5)
  2. stop: 结束,但不包括 stop。例如:range(0,5) 是[0, 1, 2, 3, 4]没有5
  3. step:步长,默认为1。例如:range(0,5) 等价于 range(0, 5, 1)

例如:


for i in range(0,5):print (i)


for i in range(0,5,2):print (i)

images


类型转换函数:

1. int

int() 函数用于将一个字符串或数字转换为整型。

语法:class int(x, base=10)

参数:

x – 字符串或数字。

base – 进制数,默认十进制。

注意这个字符串只能是数字字符串。


2. str

str() 函数将对象转化为字符串。

语法:class str(object=’’)


3. list

list() 函数用于将元组或字符串转换为列表。

语法:list( seq )

参数:seq 要转换为列表的元组或字符串。

在第一篇中有提到列表的一些操作,这里就不做更多的说明了。


4. dict

字典是另一种可变容器模型,且可存储任意类型对象。

创建字典可以使用花括号 {} 来创建。


5. tuple

tuple() 函数将列表转换为元组

语法:tuple( seq )

在第一篇中也提到过,这里也不做更多说明。


6. chr

chr() 用一个整数作参数,返回一个对应的字符。

语法:chr(i)

参数: i – 可以是 10 进制也可以是 16 进制的形式的数字

例如:

images


7. ord

ord() 函数作用与 chr() 函数 相反

语法:ord(c)

参数 c 是 字符。

例如:

images


操作类函数:

1. argv

我们在使用某个脚本的时候,通常能够看到类似这样的操作,python ms17-010.py 192.168.1.2

那么这种情况就需要使用到 argv 函数了。


argv 是模块 sys 的一个函数。

它的作用是用来从程序外部获取参数。

举个粟子:


import sysa = sys.argv[0]
b = sys.argv[1]print(a,'\n')
print(b)

sys.argv[0] 是获取程序名称,

sys.argv[1] 是获取参数。

images


2. split

split() 通过指定分隔符对字符串进行切片

语法:str.split(str=””, num=string.count(str))

参数:

  1. str   分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
  2. num   分割次数。默认为 -1, 即分隔所有

例如:


url = "http://www.baidu.com/python/image/123456.jpg"
path = url.split(".")   # 以 点(.) 进行分割
print(path)

images


3. format

format() 格式化字符串函数

Python2.6 开始,新增了一种格式化字符串的函数 str.format()

字符串的格式化方法分为两种,分别为占位符(%)和format方式 。

占位符方式在Python2.x中用的比较广泛,

随着Python3.x的使用越来越广,format方式使用的更加广泛。

基本语法: {旧的字符}.format(“新的字符”)

例如:


"{} {}".format("hello", "world")    # 不设置指定位置,按默认顺序
#  输出 --> 'hello world'"{0} {1}".format("hello", "world")  # 设置指定位置
#  输出 --> 'hello world'"{1} {0} {1}".format("hello", "world")  # 设置指定位置
#  输出 --> 'world hello world'"网站名:{name}, 地址: {url}".format(name="百度", url="www.baidu.com")
#  输出 --> '网站名:百度, 地址: www.baidu.com'

或者:


age = 18
print("my age is %d" %age)
#  输出 -->  my age is 18

4. exec

exec() 执行储存在字符串或文件中的 Python 语句,相比于 eval,exec 可以执行更复杂的 Python 代码。

语法: exec(object[, globals[, locals]])

参数:

  1. object:必选参数,表示需要被指定的Python代码。它必须是字符串或code对象。
  2. globals:可选参数,表示全局命名空间(存放全局变量),如果被提供,则必须是一个字典对象。
  3. locals:可选参数,表示当前局部命名空间(存放局部变量),如果被提供,可以是任何映射对象。如果该参数被忽略,那么它将会取与globals相同的值。

返回值:

exec 返回值永远为 None

例如:


#  单行语句字符串
exec('print("Hello World")')
#  输出 -->  Hello Worldexec("print ('Hello World')")
#  输出 -->  Hello World

或者:


#  多行语句字符串
exec ("""for i in range(5):
...     print ("iter time: %d" % i)
... """)

占位符(%)常用格式表:

images


5. try except

try except 异常处理函数

对于这个函数,我们应该也经常在一些脚本上看到过。

语法:


try:code   # 处理的语句
except error as e:   # 遇到 error 执行下面的语句print(e)

例如:


name = [1,2,3]try:name[3]    #  不存在 3 这个下标值
except IndexError as e:   #  抓取 IndexError 这个异常print(e)   #  e 是错误的详细信息

处理多个异常:

语法:


try:code
except error1 as e:   # 处理 error1 异常print(e)
except error2 as e:   # 处理 error2 异常print(e)

else:

else作用:没有异常,则走else部分的逻辑代码

例如:


try:code
except error1 as e:   # 处理 error1 异常print(e)
except error2 as e:   # 处理 error2 异常print(e)
else:print("没有异常")

finally:

finally作用:不管有没有错误,都会执行finally中的代码

例如:


try:code
except error1 as e:   # 处理 error1 异常print(e)
except error2 as e:   # 处理 error2 异常print(e)
else:print("没有异常")
finally:print("不管有没有错,都执行finally")

相关文章:

Python从0到POC编写--函数

数学函数: 1. len len() 函数返回对象(字符、列表、元组等)长度或项目个数, 例如: str "python" len(str)2. range range() 函数返回的是一个可迭代对象(类型是对象),…...

【教程】Linux/Jetson 安装X11VNC同步屏幕内容

转载请注明出处:小锋学长生活大爆炸[xfxuezhagn.cn] 如果本文帮助到了你,请不吝给个[点赞、收藏、关注]哦~ 目录 背景说明 实际效果 安装步骤 安装 x11vnc 配置 x11vnc 配置 x11vnc 作为系统服务 使用 VNC 客户端连接 背景说明 通常vnc-server是单…...

【LLM第五篇】名词解释:prompt

1.是什么 提示工程(Prompt Engineering)是一门较新的学科,关注提示词开发和优化,帮助用户将大语言模型(Large Language Model, LLM)用于各场景和研究领域。 掌握了提示工程相关技能将有助于用户更好地了解…...

k8s v1.20二进制部署 部署 CNI 网络组件 部署 Calico

一、部署 flannel 1.1.K8S 中 Pod 网络通信 ●Pod 内容器与容器之间的通信 在同一个 Pod 内的容器(Pod 内的容器是不会跨宿主机的)共享同一个网络命名空间,相当于它们在同一台机器上一样,可以用 localhost 地址访问彼此的端口。…...

在React中利用Postman测试代码获取数据

文章目录 概要名词解释1、Postman2、axios 使用Postman测试API在React中获取并展示数据小结 概要 在Web开发中,通过API获取数据是一项常见任务。Postman是一个功能强大的工具,可以帮助开发者测试API,并查看API的响应数据。在本篇博客中&…...

嵌入式学习-通用定时器

简介 框图介绍 时钟选择 计数器部分 输入捕获和输出比较框图 嵌入式学习全文参考(小向是个der)做笔记:https://blog.csdn.net/qq_41954556/article/details/129735708...

培训行业有哪些ai工具?

培训行业利用人工智能(AI)工具的方式多种多样,其中一些常见的工具包括: 1. **经AI深度学习的OCR软件**:OCR能给培训行业带来很大的便利,能大大提高工作效率和降低文字录入的成本,但一般的OCR工具…...

7.STL中string的一些超常用函数 (附习题)

目录 1.find 2.atoi 3.to_string 4.getline 【leetcode 习题】 387.字符串中的第一个唯一字符 125. 验证回文串 1.find 1.查找第一次出现的目标字符串:说明:如果查找成功则输出查找到的第一个位置,否则返回-1; s1.find(s2…...

GPT搜索鸽了!改升级GPT-4

最近OpenAI太反常,消息一会一变,直让人摸不着头脑。 奥特曼最新宣布:5月13日开发布会,不是GPT-5,也不是盛传的GPT搜索引擎,改成对ChatGP和GPT-4的升级~ 消息一出,大伙儿都蒙了。 之…...

数字绘画教学实训解决方案

一、建设背景 1.1政策背景 教育信息化政策推动:近年来,随着教育信息化政策的不断推动,各级教育部门纷纷出台相关政策,鼓励和支持教育信息化的发展。数字绘画作为现代艺术教育的重要组成部分,其教学实训解决方案的建设…...

C#之如何判断数据类型

一、GetType方法 a.GetType():获取当前变量的类型对象 string str "Hello World";Console.WriteLine(str.GetType()); 结果: 二、typeof方法 typeof(Int):获取的是Int类型的类型对象 int num 10;Console.WriteLine(num.GetType() typeof(i…...

算法学习笔记(Tarjan)

本文介绍 T a r j a n Tarjan Tarjan求强联通分量、找割点和割边、找环。 Tarjan求强联通分量 例题:【模板】有向图缩点 题目描述 给定一个 n n n点 m m m边的有向图(保证不存在重边与自环,但不保证连通),请你求出…...

一台linux通过另一台linux访问互联网-TinyProxy

参考: https://blog.csdn.net/weixin_41831919/article/details/113061317https://www.yuncongz.com/archives/1.htmlhttps://blog.csdn.net/aoc68397/article/details/101893369 环境:ubuntu 18.04 机器1: IP 219.216.65.252 (可以访问外网) 机器2: IP…...

探索数据结构:堆的具体实现与应用

✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:数据结构与算法 贝蒂的主页:Betty’s blog 1. 堆的概念 堆(Heap)是计算机科学中一类特殊的数据结构。堆通常是一个…...

网络2--MAC地址,IP地址的理解

引入: 每一张主机都会有一张网卡,每一张网卡都有一个48bit位的序列号 当我们的热点被连上,你查看时,就会出现MAC地址,IP地址 那么他们两个是什么呢??? MAC地址 在同一个局域网中…...

类型的转换

首先我们要了解java中的数据类型转换是指将一种数据类型转换成另一种数据类型的过程。 什么时候会用到?我觉得两种情况会用到 等号左右两边类型不一致(一般发生在赋值时)不同类型的数据参与运算(一般发生在计算时) 转…...

memset函数

让我们先看两个代码 memset(dp, 0x3f, sizeof(dp)); for (int i 0; i < 5; i)cout << dp[i] << " "; memset(dp, 127, sizeof(dp)); for (int i 0; i < 5; i)cout << dp[i] << " "; 代码结果如下&#xff1a; 现在我们来分…...

Java面向对象——多态

即同一个方法可以根据发送对象的不同而采用多种不同的行为方式。 一个对象的实际类型是确定的&#xff0c;但可以指向对象的引用的类型有很多&#xff08;父类&#xff0c;有关系的类&#xff09;。 多态存在的条件&#xff1a; 1. 有继承关系&#xff1b; 2. 子类重写父类…...

python 对矩阵与矩阵之间对应位置的元素,做softmax操作,代码实战

1.对矩阵中对应位置的元素&#xff0c;做softmax 对于一个向量&#xff0c;softmax函数会对其中每一个元素进行指数运算&#xff0c;然后除以所有元素指数和的结果。当将其应用到多个矩阵的相应位置上时&#xff0c;我们实际上是在对每个位置的一组数&#xff08;从各个矩阵的同…...

Angular前端项目在Apache httpd服务器上的部署

Apache Httpd和Tomcat主要区别&#xff1a;Tomcat是一个Java Servlet容器&#xff0c;用于运行Java Servlet和JavaServer Pages&#xff08;JSP&#xff09;&#xff0c;而Apache HTTP服务器是一个通用的Web服务器&#xff0c;用于提供静态和动态内容。 Apache httpd安装&#…...

idea大量爆红问题解决

问题描述 在学习和工作中&#xff0c;idea是程序员不可缺少的一个工具&#xff0c;但是突然在有些时候就会出现大量爆红的问题&#xff0c;发现无法跳转&#xff0c;无论是关机重启或者是替换root都无法解决 就是如上所展示的问题&#xff0c;但是程序依然可以启动。 问题解决…...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘

美国西海岸的夏天&#xff0c;再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至&#xff0c;这不仅是开发者的盛宴&#xff0c;更是全球数亿苹果用户翘首以盼的科技春晚。今年&#xff0c;苹果依旧为我们带来了全家桶式的系统更新&#xff0c;包括 iOS 26、iPadOS 26…...

突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合

强化学习&#xff08;Reinforcement Learning, RL&#xff09;是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程&#xff0c;然后使用强化学习的Actor-Critic机制&#xff08;中文译作“知行互动”机制&#xff09;&#xff0c;逐步迭代求解…...

Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)

文章目录 1.什么是Redis&#xff1f;2.为什么要使用redis作为mysql的缓存&#xff1f;3.什么是缓存雪崩、缓存穿透、缓存击穿&#xff1f;3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...

MFC内存泄露

1、泄露代码示例 void X::SetApplicationBtn() {CMFCRibbonApplicationButton* pBtn GetApplicationButton();// 获取 Ribbon Bar 指针// 创建自定义按钮CCustomRibbonAppButton* pCustomButton new CCustomRibbonAppButton();pCustomButton->SetImage(IDB_BITMAP_Jdp26)…...

HTML 列表、表格、表单

1 列表标签 作用&#xff1a;布局内容排列整齐的区域 列表分类&#xff1a;无序列表、有序列表、定义列表。 例如&#xff1a; 1.1 无序列表 标签&#xff1a;ul 嵌套 li&#xff0c;ul是无序列表&#xff0c;li是列表条目。 注意事项&#xff1a; ul 标签里面只能包裹 li…...

反射获取方法和属性

Java反射获取方法 在Java中&#xff0c;反射&#xff08;Reflection&#xff09;是一种强大的机制&#xff0c;允许程序在运行时访问和操作类的内部属性和方法。通过反射&#xff0c;可以动态地创建对象、调用方法、改变属性值&#xff0c;这在很多Java框架中如Spring和Hiberna…...

【JavaWeb】Docker项目部署

引言 之前学习了Linux操作系统的常见命令&#xff0c;在Linux上安装软件&#xff0c;以及如何在Linux上部署一个单体项目&#xff0c;大多数同学都会有相同的感受&#xff0c;那就是麻烦。 核心体现在三点&#xff1a; 命令太多了&#xff0c;记不住 软件安装包名字复杂&…...

Spring数据访问模块设计

前面我们已经完成了IoC和web模块的设计&#xff0c;聪明的码友立马就知道了&#xff0c;该到数据访问模块了&#xff0c;要不就这俩玩个6啊&#xff0c;查库势在必行&#xff0c;至此&#xff0c;它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据&#xff08;数据库、No…...

USB Over IP专用硬件的5个特点

USB over IP技术通过将USB协议数据封装在标准TCP/IP网络数据包中&#xff0c;从根本上改变了USB连接。这允许客户端通过局域网或广域网远程访问和控制物理连接到服务器的USB设备&#xff08;如专用硬件设备&#xff09;&#xff0c;从而消除了直接物理连接的需要。USB over IP的…...