码迷,mamicode.com
首页 > 编程语言 > 详细

python3----函数(join)

时间:2018-01-14 11:07:23      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:split   inpu   for循环   知识   join   join()   代码   忽略   元素   

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

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

代码附上:

a = map(int,input("请输入:").split(‘+‘))
a = sorted(a)
print(len(a))
for i in a:
if i != len(a):
print(i,‘+‘)
else:
print(i)

 

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

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

代码附上:

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

or

print(‘+‘.join(sorted(input("请输入:").split(‘+‘))))

 

代码简洁,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[,......]])

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

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

 

二、实例

 1 #对序列进行操作(分别使用‘ ‘与‘:‘作为分隔符)
 2  
 3 >>> seq1 = [hello,good,boy,doiido]
 4 >>> print( .join(seq1))
 5 hello good boy doiido
 6 >>> print(:.join(seq1))
 7 hello:good:boy:doiido
 8  
 9  
10 #对字符串进行操作
11  
12 >>> seq2 = "hello good boy doiido"
13 >>> print(:.join(seq2))
14 h:e:l:l:o: :g:o:o:d: :b:o:y: :d:o:i:i:d:o
15  
16  
17 #对元组进行操作
18  
19 >>> seq3 = (hello,good,boy,doiido)
20 >>> print(:.join(seq3))
21 hello:good:boy:doiido
22  
23  
24 #对字典进行操作
25  
26 >>> seq4 = {hello:1,good:2,boy:3,doiido:4}
27 >>> print(:.join(seq4))
28 boy:good:doiido:hello
29  
30  
31 #合并目录
32  
33 >>> import os
34 >>> os.path.join(/hello/,good/boy/,doiido)
35 /hello/good/boy/doiido

 

python3----函数(join)

标签:split   inpu   for循环   知识   join   join()   代码   忽略   元素   

原文地址:https://www.cnblogs.com/jonm/p/8281032.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!