常见的字符串操作
Python面面观
共 2413字,需浏览 5分钟
· 2020-11-30
一部分字符串操作的总结,比较基础。目录:
使用str.split() 切分数据
将 datetime 类型转化为字符串类型
字符串的合并操作
使用 str.strip() 去除字符串前面和后面所有的字符串
替代字符串中的某些字符串为另外的字符串
Python 中的 i++,i+
下面简单的演示。
使用 str.split() 切分数据
import pandas as pd
from pandas import Series,DataFrame
man = pd.DataFrame({
'data':['张三|男','李四|男','王五|男']
})
man
# 使用str.split() 把数据分成两列
man = man['data'].apply(lambda x :Series(x.split('|')))
man
将 datetime 类型转化为字符串类型
# 将datetime类型转化为字符串类型
from datetime import datetime
stamp = datetime(2019,5,1)
stamp
datetime.datetime(2019, 5, 1, 0, 0)
str_stamp= str(stamp)
str_stamp
'2019-05-01 00:00:00'
字符串的合并操作
使用 join() 连接字符串数组
# join():连接字符串数组。将字符串、元组、列表、Series中的元素以指定的字符(分隔符)连接生成一个新的字符串
a=['1','2','3','4','5']
text = ' '.join(a)
text
'1 2 3 4 5'
使用 + 连接字符串
# 使用加号
x = 'a' + 'b'
x
'ab'
使用 format() 将多个字符串合并,主要用在变量输出上
x = 'i am {1} and {0} years old'.format(30., 'Tony')
x
'i am Tony and 30.0 years old'
使用 Pandas 自带的 cat() 函数
# Series.str.cat(others=None, # 要合并的另外一个对象,如果为空则将左侧对象组合
# sep=None, # 合并的分隔符,默认为空
# na_rep=None) # 如果遇到NA值的处理方式,默认忽略
EG = pd.Series(['a', 'b', 'c']).str.cat(sep=';')
EG
'a;b;c'
EG = pd.Series(['a', 'b', 'c']).str.cat(['A', 'B', 'C'], sep='@@')
EG
0 a@@A
1 b@@B
2 c@@C
dtype: object
使用 str.strip() 去除字符串前面和后面所有的字符串
# str.strip([chars]);去除字符串前面和后面的所有设置的字符串,默认为空格
st = " hello "
st = st.strip()
print(st + 'word')
helloword
# 删除字符串'l, o'
st = st.strip('l, o')
print(st)
he
替代字符串中的某些字符串为另外的字符串
# str.replace(old, new[, max])
# old -- 将被替换的子字符串。
# new -- 新字符串,用于替换old子字符串。
# max -- 可选字符串, 替换不超过 max 次
st = "hello"
st = st.replace('l', 'a', 1)
st
'healo'
# 替换字符串中的某些子串,可以用正则表达式来匹配被选子串。
# re.sub(pattern, repl, string, count=0, flags=0)
# pattern:表示正则表达式中的模式字符串;
# repl:被替换的字符串(既可以是字符串,也可以是函数);
# string:要被处理的,要被替换的字符串;
# count:匹配的次数, 默认是全部替换
import re
st = "hello 2019"
st = re.sub("([0-9]+)","word",st)
print(st)
hello word
Python 中的 i++,i+
顺便在这篇基础下面总结下 Python 中的 i++,i+ 这类写法和 Java 不一样。在新手入门时会有点疑问,这里列一下。
i+1
这种都是一样的写法,没什么问题,很好理解。
for i in range(3):
i=i+1
print(i)
1
2
3
i+
i+ 就是 Python 中的自增写法。相当于其他语言的 ++i。
for i in range(3):
i+=5
print(i)
5
6
7
i-
Python 中的自减写法。
for i in range(3):
i-=5
print(i)
-5
-4
-3
++i
Python 中的 ++i,仅仅是作为判断运算符号,类似数学中的负负得正。
# 体现在这个案例中,就是对结果值没影响
for i in range(3):
++i
print(i)
0
1
2
i++
Python 中不支持这类写法,所以直接报错。
for i in range(3):
i++
print(i)
File "" , line 2
i++
^
SyntaxError: invalid syntax
评论
真高!比亚迪员工爆料比亚迪在越南的薪资水平:基本工资480万,全勤奖35万,交通补助20万,餐补110万,每周6天,每天10小时
上一篇:某大公司为逼迫员工离职,竟然把他的工位安排到厕所旁,没想到他直接开始记录领导的如厕时间,还发到公司大群...对此,你怎么看?--完--PS:欢迎在留言区留下你的观点,一起讨论提高。如果今天的文章让你有新的启发,欢迎转发分享给更多人。全文完,感谢你的耐心阅读。如果你还想看到我的文章,请一定给本
开发者全社区
0
太敢穿了!透视纱裙!性感火辣的身材
绝了呀今天的厂花:吴宣仪1995年1月26日,吴宣仪出生于海南省海口市,中国内地流行乐女歌手、影视演员。2016年2月,吴宣仪随宇宙少女发行首张迷你专辑正式出道。2018年4月,她参加《创造101》综艺选秀,获得第二名,成功加入火箭少女101组合。吴宣仪的颜值一直备受称赞,她的五官立体精致,皮肤白皙
逆锋起笔
0
某大公司为逼迫员工离职,竟然把他的工位安排到厕所旁,没想到他直接开始记录领导的如厕时间,还发到公司大群...
上一篇:字节的跳动职级与薪资(2024年)我们与公司间的合作,宛如两艘船只在茫茫大海上相互依靠,共同抵御风浪,携手驶向成功的彼岸。然而,当航向开始产生分歧,或是波涛汹涌的风浪改变了我们的初衷,我们或许应当冷静地选择和平分手,而非在风雨中硬撑。最近,一位网友的遭遇引起了广大职场人的关注和热议。这位网友
开发者全社区
0
金融研究 | 使用Python测量关键审计事项的「信息含量」
Tips: 公众号推送后内容只能更改一次,且只能改20字符。如果内容出问题,或者想更新内容, 只能重复推送。为了更好的阅读体验,建议阅读本文博客版, 链接地址https://textdata.cn/blog/2023-01-13-information-content-of-critical-aud
大邓和他的Python
0
我看阿里的年终奖总算发了!
到4月底了,这两天看朋友圈,发现阿里的年终奖终于发了,问了问老同学,也从网上检索了不少信息,基本搞清楚了阿里今年的年终奖情况。近来来阿里一些集团对绩效等级做了较大的调整,以前的旧绩效系统中,绩效分为3.25、3.5、3.75、4和5五个等级,其中4和5是较高绩效等级,较少见。而且之前3.5绩效内部划
公子龙
0
CVPR 2024|大视觉模型的开山之作!无需任何语言数据即可打造大视觉模型
↑ 点击蓝字 关注极市平台作者丨科技猛兽编辑丨极市平台极市导读 本文提出一种序列建模 (sequential modeling) 的方法,不使用任何语言数据,训练大视觉模型。>>加入极市CV技术交流群,走在计算机视觉的最前沿本文目录1 序列建模打造大视觉模型(来自 U
极市平台
1
金融研究(更新) | 使用Python构建关键审计事项的「信息含量」
Tips: 公众号推送后内容只能更改一次,且只能改20字符。如果内容出问题,或者想更新内容, 只能重复推送。为了更好的阅读体验,建议阅读本文博客版, 链接地址https://textdata.cn/blog/2023-01-13-information-content-of-critical-aud
大邓和他的Python
0
字节的跳动职级与薪资(2024年)
上一篇:阿里公布年终奖,P7, 3.5+,22W年终奖,还有35W长期现金激励,真香字节跳动自2012年3月成立以来,已经迅速成长为一个全球性的科技公司。其产品和服务已经遍布全球150多个国家与地区,并且支持超过75种不同的语言。在字节跳动的官方网站上,列出了一系列引人注目的产品和服务,包括但不限于
开发者全社区
0