python join函数用法-Python join()函数

今天写python 100例时,有个题目是大致是这样的:已知输入形式是1+3+2+1,要求输出形式为1+1+2+3

一开始思路是将输入的字符串用split()函数划分成数组,在对数组进行排序,再用for循环输出

代码附上:

a = map(int,raw_input().split("+"))

a = sorted(a)

for i in a:

if(i != len(a)):

print i,"+"

else:

print i

虽然能够输出正确结果,但是代码过于繁琐。由于先前学习C语言,也做过相关算法练习,所以思想被固定。

再看了一下大神的代码,简直膜拜了。

代码附上:

print "+".join(sorted(raw_input()[::2]))

代码简洁,python函数很熟悉。所以去查了一下join相关知识,以下有较全的解释及例子。

函数:string.join()

Python中有join()和os.path.join()两个函数,具体作用如下:

join(): 连接字符串数组。将字符串、元组、列表中的元素以指定的字符(分隔符)连接生成一个新的字符串

os.path.join(): 将多个路径组合后返回

一、函数说明

1、join()函数

语法: "sep".join(seq)

参数说明

sep:分隔符。可以为空

seq:要连接的元素序列、字符串、元组、字典

上面的语法即:以sep作为分隔符,将seq所有的元素合并成一个新的字符串

返回值:返回一个以分隔符sep连接各个元素后生成的字符串

2、os.path.join()函数

语法: os.path.join(path1[,path2[,......]])

返回值:将多个路径组合后返回

注:第一个绝对路径之前的参数将被忽略

二、实例

#对序列进行操作(分别使用" "与":"作为分隔符)

>>> seq1 = ["hello","good","boy","doiido"]

>>> print " ".join(seq1)

hello good boy doiido

>>> print ":".join(seq1)

hello:good:boy:doiido

#对字符串进行操作

>>> seq2 = "hello good boy doiido"

>>> print ":".join(seq2)

h:e:l:l:o: :g:o:o:d: :b:o:y: :d:o:i:i:d:o

#对元组进行操作

>>> seq3 = ("hello","good","boy","doiido")

>>> print ":".join(seq3)

hello:good:boy:doiido

#对字典进行操作

>>> seq4 = {"hello":1,"good":2,"boy":3,"doiido":4}

>>> print ":".join(seq4)

boy:good:doiido:hello

#合并目录

>>> import os

>>> os.path.join("/hello/","good/boy/","doiido")

"/hello/good/boy/doiido"

python join函数

join()函数 语法:  "sep".join(seq) 参数说明sep:分隔符.可以为空seq:要连接的元素序列.字符串.元组.字典上面的语法即:以sep作为分隔符,将seq所有的元素合并成一个新 ...

Python中的join()函数的用法

函数:string.join() Python中有join()和os.path.join()两个函数,具体作用如下:    join():    连接字符串数组.将字符串.元组.列表中的元素以指定的字 ...

Python中的join()函数split()函数

函数:string.join() Python中有join()和os.path.join()两个函数,具体作用如下:     join():    连接字符串数组.将字符串.元组.列表中的元素以指定的 ...

python中join()函数的使用方法

函数:string.join() Python中有join()和os.path.join()两个函数,具体作用如下:    join():    连接字符串数组.将字符串.元组.列表中的元素以指定的字 ...

Python中join()函数方法

函数:string.join() Python中有join()和os.path.join()两个函数,具体作用如下:    join():    连接字符串数组.将字符串.元组.列表中的元素以指定的字 ...

Python中的join()函数的用法及列表推导式

[红色为转载后新增部分] 函数:string.join() Python中有join()和os.path.join()两个函数,具体作用如下: join():连接字符串数组.将字符串.元组.列表中的元 ...

python中join()函数、list()函数补充的用法

---恢复内容开始--- Python join() 方法用于将序列中的元素(必须是str) 以指定的字符 连接生成一个新的字符串. list=[","a","b","c"] print("".joi ...

详解Python中的join()函数的用法

函数:string.join() Python中有join()和os.path.join()两个函数,具体作用如下:     join():    连接字符串数组.将字符串.元组.列表中的元素以指定的 ...

Python中join函数和os.path.join用法

Python中有join和os.path.join()两个函数,具体作用如下: join:连接字符串数组.将字符串.元组.列表中的元素以指定的字符(分隔符)连接生成一个新的字符串 os.path.jo ...

随机推荐

SQL中not and or优先级问题

SQL中 not  and or优先级问题 刚刚在项目中遇到这样一个问题,SQL语句如下: 我想要的结果的条件是:1. LIBRARY_ID=1 或者 LIB_ID=1 2.STATUS=3 但是结果 ...

浅析五大ASP.NET数据控件

转自:http://kb.cnblogs.com/page/69207/ 摘要:ASP.NET中有不少的控件,在这当中有一部分是用来处理数据的控件.在这里我们正要讨论的就是ASP.NET数据控件,希望 ...

Ubuntu 12.04 wireless networks : devices not ready (firmware missing)解决办法

今天装了Ubuntu12.04之后,发现无线不能用. 用iwconfig查看,wlan0 项后面有内容,但是在本该显示无线列表的地方显示的是 “ wireless networks : devices ...

linux 内核 zImage 生成过程分析

1. 依据arch/arm/kernel/vmlinux.lds 生成linux内核源码根目录下的vmlinux,这个vmlinux属于未压缩,带调试信息.符号表的最初的内核,大小约23MB: arm ...

按照excel文档中的内容在当前cad图纸中自动排布实体

本例实现的主要功能是读取excel文档中的内容,其次是将按照读取的信息在当前cad图纸中添加相应的实体.下面先介绍实现代码: CString excelPath; //外部excel文档的地址 Upd ...

ubuntu 32/64 bit

https://askubuntu.com/questions/454253/how-to-run-32-bit-app-in-ubuntu-64-bit how to run 32-bit app ...

js常用到的方法积累

//获取对象长度的方法 function countObjLen(obj) { var count = 0; for (var property in obj) { if (Object.protot ...

SSH 登录时出现如下错误:Disconnected:No supported authentication methods available

SSH 登录时出现如下错误:Disconnected:No supported authentication methods available 更新时间:2017-06-07 13:26:11   ...

【19道XSS题目】不服来战!(转)

[19道XSS题目]不服来战! 记得第一次接触xss这个概念是在高中,那个时候和一个好基友通过黑客X档案和黑客手册.第一次接触到了除了游戏以外的电脑知识,然后知道了,原来电脑除了玩游戏还可以搞这些,从 ...

网络请求 get 请求时, 如果参数中的字符带有+号

网络请求 get 请求时, 如果参数中的字符带有+号, 今天前端在调用我的API时, 发现有个参数一直没法通过我后台的验证, 但是在前端查看时, 该参数结构又没有什么异常, 又是一番查找, 直到在后端 ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值