python分割和拼接字符串

yipeiwu_com6年前Python基础
关于string的split 和 join 方法
对导入os模块进行os.path.splie()/os.path.join() 貌似是处理机制不一样,但是功能上一样。

1.string.split(str=' ',num=string.count(str)):  以str为分隔,符切片string,如果num有指定值,则仅分隔num个子字符串。
S.split([sep [,maxsplit]]) -> 由字符串分割成的列表 返回一组使用分隔符(sep)分割字符串形成的列表。如果指定最大分割数,则在最大分割时结束。
如果分隔符未指定或者为none,则分隔符默认为空格。
注意:分隔符不能为空,否则会出错,但是可以有不含其中的分隔符。
os.path.split()
os.path.split是按照路径将文件名和路径分割开,比如d:\\python\\python.ext,可分割为['d:\\python', 'python.exe']
复制代码 代码如下:

import os
 print os.path.split('c:\\Program File\\123.doc')
 print os.path.split('c:\\Program File\\')
 -----------------output---------------------
 ('c:\\Program File', '123.doc')
 ('c:\\Program File', '')

2.string.join(sep):  以string作为分割符,将sep中所有的元素(字符串表示)合并成一个新的字符串。
将join里字符串、元祖、列表的所有元素通过分隔符连接成一个新的字符串(字符串、元祖、列表它们是序列类型,有着相同的访问方式)
os.path.join(path1[,path2[,......]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略。
复制代码 代码如下:

>>> os.path.join('c:\\', 'csv', 'test.csv')
'c:\\csv\\test.csv'
>>> os.path.join('windows\temp', 'c:\\', 'csv', 'test.csv')
'c:\\csv\\test.csv'
>>> os.path.join('/home/aa','/home/aa/bb','/home/aa/bb/c')
'/home/aa/bb/c'

例子:
写一个函数,参数为一个长字符串和一个word,将长字符串中是word的改为对应字母个数的**,比如,长字符串为“this hack is wack hack”,word为“hack”,那么要求函数输出:“this **** is wack ****”
复制代码 代码如下:

def censor(text,word):
    texts = text.split(" ")
    for i in range(len(texts)):if texts[i] == word:
            texts[i] = "*" * len(word)
    return " ".join(texts)
print censor("hey hey hey","hey")

输出:
*** *** ***

相关文章

Python在不同目录下导入模块的实现方法

python在不同层级目录import模块的方法 使用python进行程序编写时,经常会调用不同目录下的模块及函数。本篇博客针对常见的模块调用讲解导入模块的方法。 1. 同级目录下的调用...

PyCharm使用Docker镜像搭建Python开发环境

PyCharm使用Docker镜像搭建Python开发环境

在我们平时使用PyCharm的过程中,一般都是连接本地的Python环境进行开发,但是如果是离线的环境呢?这样就不好搭建Python开发环境,因为第三方模块的依赖复杂,不好通过离线安装包...

Python内置函数reversed()用法分析

本文实例讲述了Python内置函数reversed()用法。分享给大家供大家参考,具体如下: reversed()函数是返回序列seq的反向访问的迭代器。参数可以是列表,元组,字符串,不...

利用python获取当前日期前后N天或N月日期的方法示例

前言 最近因为工作原因,发现一个Python的时间组件,很好用分享出来!(忘记作者名字了,在这里先感谢了),下面话不多说,来一起看看详细的介绍吧。 示例代码: # -*- codi...

一行Python代码过滤标点符号等特殊字符

很多时候我们需要过滤掉标点符号等特殊字符,网上虽然有一堆的方法,但是都没有找到一个非常满意的,有些过滤不了中文的标点符号,有些过滤不了英文的标点符号,有些过滤不全。 最后通过查看正则表达...