Python字符串string方法大全及使用方法[1]以及FastAPI框架文件上传的处理-client使用postman

一、Python字符串string方法大全及使用方法[1]

1. Python字符串string方法大全及意义解释

#将字符串的第一个字符转换为大写
capitalize()

#返回一个指定的宽度 width 居中的字符串,fillchar 为填充的字符,默认为空格。
center(width, fillchar) 

#返回 str 在 string 里面出现的次数,如果 beg 或者 end 指定则返回指定范围内 str 出现的次数
count(str, beg= 0,end=len(string)) 

#以 encoding 指定的编码格式编码字符串,如果出错默认报一个ValueError 的异常,除非 errors 指定的是'ignore'或者'replace'
encode(encoding='UTF-8',errors='strict')

#检查字符串是否以 obj 结束,如果beg 或者 end 指定则检查指定的范围内是否以 obj 结束,如果是,返回 True,否则返回 False.
endswith(suffix, beg=0, end=len(string))

#把字符串 string 中的 tab 符号转为空格,tab 符号默认的空格数是 8 。
expandtabs(tabsize=8)

#检测 str 是否包含在字符串中,如果指定范围 beg 和 end ,则检查是否包含在指定范围内,如果包含返回开始的索引值,否则返回-1 
find(str, beg=0, end=len(string))

#index跟find()方法一样,只不过如果str不在字符串中会报一个异常。
index(str, beg=0, end=len(string))

#如果字符串至少有一个字符并且所有字符都是字母或数字则返回True,否则返回 False
isalnum()
#如果字符串至少有一个字符并且所有字符都是字母或中文字则返回 True, 否则返回 False
isalpha()
#如果字符串中只包含空白,则返回 True,否则返回 False.
isspace()


#如果字符串只包含数字则返回 True 否则返回 False..
isdigit()
#检查字符串是否只包含十进制字符,如果是返回 true,否则返回 false。
isdecimal()
#如果字符串中只包含数字字符,则返回 True,否则返回 False
isnumeric()

#如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,则返回 True,否则返回 False 
isupper()
#如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False
islower()

#如果字符串是标题化的(见 title())则返回 True,否则返回 False
istitle()
#将字符串中大写转换为小写,小写转换为大写
title()

#返回字符串长度
len(string)
#转换字符串中所有大写字符为小写.
lower()
#转换字符串中的小写字母为大写
upper()
#返回字符串 str 中最大的字母。
max(str)
#返回字符串 str 中最小的字母。 
min(str)

2. Python上述字符串方法使用示例

#python字符串方法示例
def test_string():a = "this is a test."b = "这是一句中文"c = " 两边有空格 中间有空格 "d = "test"print(a.capitalize())#out : This is a test.print(d.center(10, "-"))#out: ---test---print(d.center(11, "-"))#此时就不居中了#out: ----test---print(a.count("is"))print(a.count("is", 4))#out:2 1str_utf8 = b.encode("UTF-8")print("UTF-8 编码:", str_utf8)#out UTF-8 编码: b'\xe8\xbf\x99\xe6\x98\xaf\xe4\xb8\x...print(c.endswith(" "))#out: Trueb = "这是一句\t中文"print(b.expandtabs(tabsize=12))print(b.expandtabs(tabsize=13))print(a.find("test"))print(a.index('test'))print(a.find("ttt"))#index找不到会报错#print(a.index("ttt"))print("12.34".isdigit())print("0012.34".isdigit())print("0012.34".isdecimal()) print("二".isdigit())print("二".isnumeric())print("IV".isnumeric())print("IV".isdigit())print("abc中".isalpha())print("Hello,yes".istitle())print("Hello,Yes".istitle())#out: False False False False True False False True False Trueprint("This is a test, yes".title())print(d.upper())print("This is A Test".lower())print(max(a))print(min(d))#out This Is A Test, Yes    TEST   this is a test  t   e

 

二、FastAPI框架文件上传的处理-client使用postman

    使用FastAPI处理文件上传,文件上传Content-Type必须使用multipart/form-data,因为python服务端必须要安装python-multipart模块。另外在postman客户端,需要在body中选择form-data,在下面的key输入框右边鼠标停留(会出现一个下拉选择file/text),选择file表示这是个文件域,从而右边可以上传文件。此时header中会自动生成Content-Type:multipart/form-data; boundary=<calculated when request is sent> 项,不需要我们手动配置 publish:November 20, 2020 -Friday。

#python安装python-multipart模块
$ pip install python-multipart
Collecting python-multipartDownloading python-multipart-0.0.5.tar.gz (32 kB) 
Installing collected packages: python-multipart
Successfully installed python-multipart-0.0.5

    现下来就是服务端的python处理程序了,FastAPI有两种处理的办法,一种是使用bytes二进制,一种是使用UploadFile。两种方法的示例代码如下:

from fastapi import File,UploadFile
import shutil
from pathlib import Path
from tempfile import NamedTemporaryFile@app.post("/test/upload", summary="bytes方式")
async def test_upload(files: bytes=File(...)):#打开一个文件。开始写入with open("a.txt", "w+", encoding="utf-8") as f:f.write(files.decode("utf-8"))f.flush()print(files.decode("utf-8"))return {"file_size": len(files)}@app.post("/test/fileupload", summary="UploadFile方式")
async def test_fileupload(files: UploadFile=File(...)):save_dir = "./uploads"try:suffix = Path(files.filename).suffix#创建一个临时文件并写入with NamedTemporaryFile(delete=Falst, suffix=suffix, dir=save_dir) as tmp:shutil.copyfileoby(files.file, tmp)tmp_file_name = Path(tmp.name).namefinally:files.file.close()return {"old_name":files.filename, "tmp_name":tmp_file_name}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1552959.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

磁编码器磁铁要求和安装要求

总结来说&#xff0c; 磁铁需要是径向两极充磁、牌号N35、直径10mm、高度2.5mm的烧结钕铁硼磁铁。 磁铁的固定套必须是非导磁材料&#xff0c;比如铜、铝、塑料。 磁铁要距离电机轴至少2mm以上。 磁铁距离磁编码芯片0.5~3mm&#xff0c;最好1到2mm。 使用磁编码器的伺服&#…

css设置文本样式属性

目录 1.font-size&#xff1a;字体大小 案例&#xff1a;通过font-size属性设置字体的大小 1.代码 2.效果 2.font-family:字体的展现形式 案例&#xff1a;使用font-family属性设置字体的风格 1.代码实现 2.效果 3. font-weight:字体的粗细 案例&#xff1a;使用font-weight定义…

基于SSM+Vue技术的定制式音乐资讯平台

文未可获取一份本项目的java源码和数据库参考。 一、选题的背景与意义&#xff1a; 随着个人计算机的普及和互联网技术的日渐成熟&#xff0c;网络正逐渐成为人们获取信息及消费的主要渠道。然而在当前这个信息时代&#xff0c;网络中的信息种类和数量呈现爆炸性增长的趋势&a…

爱拼才会赢,甲骨文公司智算中心标配英伟达GPU10万颗

【科技明说 &#xff5c; 科技热点关注】 之前有有外媒消息&#xff0c;甲骨文宣布推出了多款智算集群&#xff0c;可通过甲骨文云基础设施提供AI训练服务&#xff0c;其中最顶级的一款配备了超过10万块的NVIDIA Blackwell GPU。 它一共使用了多达131072万块B200 GPU加速卡&…

单链表及其代码实现

目录 前言单链表1.1 单链表的定义1.2单链表代码实现1.2.1 头文件1.2.2 函数实现文件1.2.3 测试文件1.2.4 野指针问题 总结 前言 本文介绍单链表&#xff0c;主要是创销、增删改查代码实现。 注&#xff1a;文章中函数命名采取STL库。 单链表 1.1 单链表的定义 单链表是链线…

北京市大兴区启动乐享生活 寻味大兴 美食嘉年华 系列促销费活动

北京市大兴区启动乐享生活 寻味大兴 系列促销费活动 区商务局副局长 兰莉 致开幕辞 区餐饮行业协会会长 董志明 介绍活动内容 2024年9月30日&#xff0c;由大兴区商务局主办、大兴区餐饮行业协会承办&#xff0c;并得到高米店街道和大兴绿地缤纷城大力支持的“乐享生活 寻味大…

OceanBase—02(入门篇——对于单副本单节点,由1个observer扩容为3个observer集群)——之前的记录,当初有的问题未解决,目前新版未尝试

OceanBase—02&#xff08;入门篇——对于单副本单节点&#xff0c;由1个observer扩容为3个observer集群&#xff09;——之前的记录&#xff0c;有的问题未解决&#xff0c;新版未尝试 1、前言—安装单副本单节点集群1.1 docker安装OB 2、查看现有集群情况2.1 进入容器&#x…

SOMEIP_ETS_147: SD_Send_triggerEventUINT8_Eventgroup_2

测试目的&#xff1a; 验证DUT在Tester订阅事件组后&#xff0c;能够响应Tester触发的triggerEventUINT8方法&#xff0c;并将TestEventUINT8事件发送到订阅请求中端点选项指定的IP地址和端口。 描述 本测试用例旨在确保DUT能够正确处理事件组的订阅请求&#xff0c;并且在T…

VSOMEIP代码阅读整理(1) - 网卡状态监听

一. 概述 ​ 在routing进程所使用的配置文件中&#xff0c;存在如下配置项目&#xff1a; {"unicast" : "192.168.56.101",..."service-discovery" :{"enable" : "true","multicast" : "224.244.224.245&q…

在2核2G服务器安装部署MySQL数据库可以稳定运行吗?

阿里云2核2G服务器可以安装MySQL数据库吗&#xff1f;当然可以&#xff0c;并且可以稳定运行MySQL数据库&#xff0c;目前阿里云服务器网aliyunfuwuqi.com使用的就是阿里云2核2G服务器&#xff0c;在云服务器上安装MySQL数据库&#xff0c;可以稳定运行。 目前阿腾云用于运行M…

C++系列-继承补充

&#x1f308;个人主页&#xff1a;羽晨同学 &#x1f4ab;个人格言:“成为自己未来的主人~” 继承和友元 友元关系不能继承&#xff0c;父亲的朋友不能是你的朋友 比如在这个例子当中&#xff1a; class Student; class Person { public:friend void Display(const Per…

厦门网站设计的用户体验优化策略

厦门网站设计的用户体验优化策略 在信息化快速发展的今天&#xff0c;网站作为企业与用户沟通的重要桥梁&#xff0c;用户体验&#xff08;UX&#xff09;的优化显得尤为重要。尤其是在交通便利、旅游资源丰富的厦门&#xff0c;吸引了大量企业进驻。在这样竞争激烈的环境中&am…

netty之NettyServer字符串编码器

前言 netty通信就向一个流水channel管道&#xff0c;我们可以在管道的中间插入一些‘挡板’为我们服务。比如字符串的编码解码&#xff0c;在前面我们使用new StringDecoder(Charset.forName(“GBK”))进行字符串解码&#xff0c;这样我们在收取数据就不需要手动处理字节码。那…

linux文件编程_进程通信

1.进程间通信介绍 进程间通信&#xff08;IPC&#xff0c;InterProcess Communication&#xff09;是指在不同进程之间传播或交换信息。 进程是操作系统的概念&#xff0c;每当我们执行一个程序时&#xff0c;对于操作系统来讲就创建了一个进程&#xff0c;在这个过程中&…

已解决:org.springframework.web.HttpMediaTypeNotAcceptableException

文章目录 写在前面问题描述报错原因分析&#xff1a; 解决思路解决办法1. 确保客户端请求的 Accept 头正确2. 修改 Controller 方法的 produces 参数3. 配置合适的消息转换器4. 检查 Spring 配置中的媒体类型5. 其他解决方案 总结 写在前面 在开发过程中&#xff0c;Spring 框…

C++容器之list基本使用

目录 前言 一、list的介绍&#xff1f; 二、使用 1.list的构造 2.list iterator的使用 3.list capacity &#x1f947; empty &#x1f947;size 4.list element access &#x1f947; front &#x1f947; back 5.list modifiers &#x1f947; push_front &#x1f947; po…

从零到一构建解释器-【1-基础概念】

文章目录 扫描器词法分析语法分析 静态分析中间代码优化代码生成运行时单遍编译器数遍历解释器转译器即使编译编译器与解释器 本教程参考【手搓解释器】 这里只是过一遍基本概念&#xff0c;后面会有涉及到具体解析 扫描器 词法分析 接受字符流忽略无意义符号&#xff0c;如…

【Git】一文看懂Git

Git 一、简介1. Git 与 SVN 区别1.1 Git 是分布式的&#xff0c;SVN 不是1.1.1 分布式版本控制系统Git1.1.2 集中式版本控制系统SVN 1.2 Git 把内容按元数据方式存储&#xff0c;而 SVN 是按文件1.3 Git 分支和 SVN 的分支不同1.4 Git 没有一个全局的版本号&#xff0c;而 SVN …

《Windows PE》3.2.4节表

节表由多个节表项&#xff08;IMAGE_SECTION_ HEADER&#xff09;组成&#xff0c;每个节表项&#xff08;40个字节&#xff09;记录了 PE中与某个特定的节有关的信息&#xff0c;如节的属性、节 的大小、在文件和内存中的起始位置等。节表中节的数量由字段IMAGE_FILE_HEADER. …

迷宫中的最短路径:如何用 BFS 找到最近出口【算法模板】

如何通过广度优先搜索&#xff08;BFS&#xff09;求解迷宫问题 在这篇文章中&#xff0c;我们将学习如何使用 广度优先搜索&#xff08;BFS&#xff09; 解决一个典型的迷宫问题&#xff0c;具体是从迷宫的一个入口出发&#xff0c;找到最近的出口。我们将一步步分析 BFS 是如…