fastjson转换时有大括号或者冒号或者有中括号_[Python Basic] 字符串处理以及类型转换 1...

String Manipulation & Typecasting (1)

1. 文本复制以及连接

1.1 Multiply sign

使用 multiply sigh/乘号* 来复制文本片段。

乘号复制文本举例:
print("Hi" * 3) # output: HiHiHi
print("*" * 10)# output:**********

1.2 连接

1.2.1 使用 plus sign 加号连接文本

加号连接文本举例:text1 = "I am"
text2 = "here" 
print(text1+ "空格" + text2)#output I am here

1.2.2使用 Comma sign 逗号连接文本

逗号连接文本举例:text1 = "I am"
text2 = "here" 
print(text1, text2)#output I am here
使用逗号和加号连接文本的区别在于,逗号连接文本在 python 中会自动加上空格

2.连接 string 字符串

2.1 使用 f-string 连接字符串

要打印字符串,你也可以使用Python的字符串格式,或者叫做 f-string。

英文:To print a string, you can also use Python's string formatting, or what is called f-strings.
f-string 输出字符串举例:
print(f'Hello World') #output: Hello World

2.1.1使用 f-string 连接变量

如果希望在字符串文本中包含打印变量,只需将变量括在左大括号和右大括号中

英文:If you want to include printing a variable inside your string literal, you just need to enclose your variable within an open curly bracket, and a close curly bracket.
f-string 输出变量举例:print(f'Hello World')
text1 = "I am"
text2 = "here"
print(f'Hi, {text1} {text2}') # output : Hi, I am here
注意: f-string 中,print 函数中的空格会被实际输出
使用 f-string, 能够让你的代码优雅且可读

3. 通过索引位置提取文本

通过引用文本从 LEFT 到 RIGHT 的索引位置,我们可以提取文本的任何部分

英文:We can extract any portion of a text, by >referencing to its index position from LEFT to >RIGHT.

如下我们将使用的例子:

hello jack 包含空格共 10 个字符位

58f7e99fbff6010a7dee917c42c6f7be.png

3.1 正序索引调用

使用左方括号和右方括号将索引括起来。 - 索引总是用一个左方括号和一个右方括号括起来。 - 从左侧开始的第一个索引位置总是 index 0 而不是 1。

英文:Use the open and close square brackets to enclose the index. Indexes are always enclosed by an open and a close square bracket. The first index position from the LEFT is always index 0 and NOT 1.
例子:
text = "Hello Jack"
print(text[0])# output: H  ## 因为大写 H 是字符串"Hello Jack" 从左数第一个字符print(text[4])# output: o  ## 同理小写 o 是字符串"Hello Jack" 从左数第4个字符

3.2 逆序索引调用

我们还可以通过"从右到左"引用文本的索引位置, 来提取文本的任何部分。 * 右边第一个位置是index -1。

英文:We can also extract any portion of a text, by referencing its index position from RIGHT to left instead. * The first position from the RIGHT is index -1.
例子:
text = "Hello Jack"
print(text[-1])# output : k## “k”是字符串 Hello Jack 从右开始索引的第一个字符    print(text[-9])# output : e## “e”是字符串 Hello Jack 从右开始索引的第 9 个字符

总结:

因此:正的索引位置从左开始,并从0、1、2、3、4、5 等开始, 而负的索引位置从右开始,并从-1、-2、-3、-4、-5、-6等开始.

英文: So, positive index positions start from the left, and start with 0, 1, 2, 3, 4, 5 and so on
while negative index positions start from the right, and start with -1, -2, -3 -4 -5, -6 and so on

3.3 提取部分字符串

For the same string, you can either use the positive indexes or negative indexes.

3.3.1 如何调取前五个字符

只需表述为”:5“即可

To extract the first 5 characters, put a colon BEFORE the index.
例子:
text = "Hello Jack" 
print(text[:5])# output: Hello##

3.3.2 如何提取后 3 个字符:

只需表述为:”-3:“

To extract the last 3 characters, put a colon AFTER the index, and use NEGATIVE
例子:
text = "Hello Jack" 
print(text[-3:])# output: ack##

3.3.3 如何提取字符串中的片段

我们还可以提取字符串文本的片段,方法是先放入一个起始索引,后跟冒号,然后放入一个结束索引。例如:print(text[6:10])

We can also slice a string literal, by putting a >starting index, followed by the colon, and then >putting an ending index.
  • 注意,输出包含起始索引,不包含结尾索引。 英文:Note that the starting index is inclusive, while the ending index is exclusive.

876266aca9e8a174885e260be20f9afe.png
正向提取例子:
text = "Hello Jack" 
print(text[6:10])# output: Jack## 输出文本6:10,将输出Jack,因为起始索引位置6是J字符,结束索引位置 10-1 是k字符。
如上的例子 10-1 索引, 如果片段的结束索引数字是10,那么意味 着片段中包含的最后一个索引位置数不是10,而是10-1,因为最后 一位索引位置是不包含在内的。
因此,请注意,在确定片段中包含的最后一个字符时,它始终是结束索引位置并减 1.
例如:
text1 = "Hello" 
print(text[2:4])# output: ll## 实际输出的是 第 2 到 3 位;即 4-1
再举例一个长的 12 位的字符串
text1 = "HelloTheWorld" 共 12 位置, 从 0 - 11 位 
print(text[8:12])# output: Worl## 实际输出的是 第 8 到 11 位;即 12-1

3.3.4 逆向提取片段

如果我们想通过从右向左索引来逆向提取片段,我们可以对索引使用负号,note! 同样,起始索引是包含的,而结束索引是不包含在内的。

Now, if we want to slice by counting from RIGHT to left instead, we can use the NEGATIVE sign for the index. Note that again the starting index is inclusive, while the ending index is exclusive.

7b42e4d604faa4faa3afdcb9ffcff99b.png
逆向索引提取例子:
text = "Hello Jack" 
print(text[-6:-9])# output: ell## 如上图所示:输出的是 -9 到 -7 的内容, 即 -9对应字母 e, -6减去 1 等于 -7 对应字母 l.

3.3.5 区域提取

我们还可以通过只放一个起始索引,后跟冒号,而不放结束索引来分割字符串文字

We can also slice a string literal, by putting only a starting index, followed by the colon, and NOT putting an ending index

b354cbfd79e4b0a46cbdadbaccf8c52f.png

``` 正向区域索引提取例子: text = "Hello Jack" print(text[4:])

# output: o Jack
## 如上图所示: 从左往右索引,因为起始索引位置4是 o 字符,而且由于我们不放结束索引,所以它将包含字符串文字的最后一个字符,即 k 字符。
![](media/15783570801942/15816953873062.jpg)

逆向区域索引提取例子: text = "Hello Jack" print(text[-4:])

# output: Jack
## 如上图所示,因为起始索引位置 -4 是 J 字符,而且由于们不放结束索引,所以它将包含直到字符串的最后一个字符,即 k 字符。

```

完毕, 待总结。

词汇:

  1. multiply sign 乘号
  2. concatenate text to join them together 翻译:将文本连接在一起
  3. open and close curly brackets 大括号
  4. square bracket 方括号

发布时间: 2020 年 2 月 15日

知乎链接: 字符串处理以及类型转换 1

当前可任意转载,转载请保存以上信息即可。无需获得授权.

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

读《深入分析Java Web技术内幕》

这里这本书的预读章节,看完预读部分,解答了一些疑惑,也相信这是一本夯实Java Web架构体系的好书。 HTTP协议解析 开发一般使用firefox的firebug调试,这的确是一个利器,HTTP的请求头响应头一目了然。 浏览器缓存机制 当…

RTSP协议基本分析

目录一、介绍二、RTSP与HTTP三、RTSP推流基本过程1、OPTION 查询服务器端可用方法1.1、Client 请求1.2、Server 回复2、ANNOUNCE 发送媒体描述信息2.1、Client 请求2.2、Server 回复3、SETUP建立RTSP会话3.1、Client 请求(视频流)3.2、Server 回复&#…

找取照片上的25个特征点,并保存结果

找取照片上的25个特征点,并保存结果 import numpy as np import cv2 from matplotlib import pyplot as plt img cv2.imread(E:\Python-workspace\OpenCV\OpenCV/water1.png,1)#第一个参数为选择照片的路径,注意照片路径最后一个为正斜杠其他都为反斜杠…

P2P技术详解(一):NAT详解——详细原理、P2P简介

目录1. IPv4协议和NAT的由来2. NAT的工作模型和特点2.1、NAT的概念模型2.2、一对一的NAT2.3、一对多的NAT2.4、按照NAT端口映射方式分类2.4.1全锥形NAT2.4.2限制锥形NAT2.4.3端口限制锥形NAT2.4.4对称型NAT3. NAT的限制与解决方案3.1、IP端到端服务模型3.2、NAT的弊端3.3、NAT穿…

显示照片的二维直方图

显示照片的二维直方图 import cv2 from matplotlib import pyplot as plt img cv2.imread(E:\Python-workspace\OpenCV\OpenCV/water1.png,1)#第一个参数为选择照片的路径,注意照片路径最后一个为正斜杠其他都为反斜杠;第二个参数,其中1表示…

周五怎么表示 mysql_完美起航-MySQL找每个月最后一个星期五--函数定义与使用

数据库作业有一道题是这样子的:有一张名叫emp的表记录员工信息,其中有如下字段 HIREDATE 表示员工被雇用的日期:然后问题是这样的:q7.Show details of employee hiredates and the date of their first payday.(Paydays occur on…

silverlight学习总结【完】

以下内容是个人理解,不保证正确性。且假设使用C#,并且有一定的相关知识和XML基础。 silverlight是什么,能做什么 silverlight用XAML来做前端界面,用.NET或者JS作为程序脚本支持,在浏览器内外运行的应用。可以认为和FLA…

P2P技术详解(二):P2P中的NAT穿越(打洞)方案详解

目录1、内容概述2、反向链接技术:一种特殊的P2P场景(通信双方中只有一方位于NAT设备之后)3、基于UDP协议的P2P打洞技术详解3.1、原理概述3.2、典型P2P情景1: 两客户端位于同一NAT设备后面(即相同内网中)3.3…

显示照片的RGB直方图

显示照片的RGB直方图 import numpy as np import cv2 as cv from matplotlib import pyplot as plt img cv.imread(E:\Python-workspace\OpenCV\OpenCV/BEYOND.png,1)#第一个参数为选择照片的路径,注意照片路径最后一个为正斜杠其他都为反斜杠;第二个参…

mysql慢查询开启语句分析_mysql慢查询语句分析总结

我们经常会接触到MySQL,也经常会遇到一些MySQL的性能问题。我们可以借助慢查询日志和explain命令初步分析出SQL语句存在的性能问题通过SHOW FULL PROCESSLIST查看问题SHOW FULL PROCESSLIST相当于select * from information_schema.processlist可以列出正在运行的连…

P2P技术详解(三):P2P中的NAT穿越(打洞)方案详解(进阶分析篇)

目录1、NAT和NAPT2、NAT带来的问题3、P2P通信穿越NAT的技术、方法4、NAT穿越技术1:应用层网关4.1、原理4.2、限制5、NAT穿越技术2:中间件技术5.1、原理5.2、限制6、NAT穿越技术3:打洞技术(Hole Punching)6.1、原理6.2、方法6.2.1NAT行为类型与…

将两大小完全相同的照片进行加权混合对比

将两张大小完全相同的照片进行加权混合对比 import cv2 img1cv2.imread(E:\Python-workspace\OpenCV\OpenCV/water1.png,1)#第一个参数为选择照片的路径,注意照片路径最后一个为正斜杠其他都为反斜杠;第二个参数,其中1表示所选照片为彩色照片…

P2P技术详解(四):P2P技术之STUN、TURN、ICE详解

目录1、内容概述2、STUN详解2.1 RFC3489/STUN2.1.1 报文结构2.1.2实现原理2.1.3STUN功能举例2.2 RFC5389/STUN2.2.1STUN用途2.2.2报文结构2.3 RFC5389与RFC3489的区别2.4 新特性介绍2.4.1指纹机制2.4.2通过DNS发现服务器机制2.4.3认证和消息完整性机制2.4.4备份服务器机制2.5 R…

比较两张大小相同的照片的差异,返回数值

比较两张大小相同的照片的差异,返回数值 from PIL import Image import math import operator from functools import reducedef image_contrast(img1, img2):image1 Image.open(img1)image2 Image.open(img2)h1 image1.histogram()h2 image2.histogram()resul…

poj2115C Looooops

http://poj.org/problem?id2115 参考人家的 如下 如i65534,当i3时,i1 其实就是 i(655343)%(2^16)1 有了这些思想,设对于某组数据要循环x次结束,那么本题就很容易得到方程: x[(B-A2^k)%2^k] /C 即 Cx(B-A)(mod 2^k) 此…

黑色背景下,计算照片白色的区域面积和周长

黑色背景下,计算照片白色的区域面积和周长 import cv2 img cv2.imread(E:\Python-workspace\OpenCV\OpenCV/beyond.png,1)#第一个参数为选择照片的路径,注意照片路径最后一个为正斜杠其他都为反斜杠;第二个参数,其中1表示所选照…

通俗易懂:快速理解P2P技术中的NAT穿透原理

目录1、基础知识1.1、什么是NAT?1.2、为什么会有NAT?1.3、NAT有什么优缺点?2、NAT的实现方式2.1、静态NAT2.2、NAPT3、NAT的主要类型3.1、完全锥型NAT(Full Cone NAT,后面简称FC)3.2、受限锥型NAT&#xff…

java 负载均衡_java负载均衡 - 岁月静好I的个人空间 - OSCHINA - 中文开源技术交流社区...

作用对系统的高可用,网络压力的缓解,处理能力扩容的重要手段之一。服务器负载我们通常所说的负载是指:服务器负载软硬件负载服务器负载又分为:软件负载--硬件负载软件负载:通过在服务器上安装一些具有负载功能或模块的…

b tree和b+tree_B TREE实施

b tree和btreeB TREE及其操作简介 (Introduction to B TREE and its operations) A B tree is designed to store sorted data and allows search, insertion and deletion operation to be performed in logarithmic time. As In multiway search tree, there are so many nod…

黑色背景下,将照片内封闭空心图案的空心区域染成Cyan并保存

在黑色背景下,将照片内封闭空心图案的空心区域染色 import cv2 import numpy as np img cv2.imread(E:\Python-workspace\OpenCV\OpenCV/beyond.png,1)#第一个参数为选择照片的路径,注意照片路径最后一个为正斜杠其他都为反斜杠;第二个参数…