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[,......]])

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

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

>>> os.path.join('d',r'c:\a','b','c')
'c:\\a\\b\\c'

 

import os
BASE_PATH = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
DATA_PATH =  os.path.join(BASE_PATH,'data')

print(BASE_PATH)
print(DATA_PATH)

G:\pytest
G:\pytest\data

 

 

二、实例

1.对序列进行操作(以 '.'为分隔符)

seq = ['hello','good','boy','doiido']

print('.'.join(seq))

hello.good.boy.doiido

 

2.对元组进行操作(以 ':'为分隔符)

seq = ('hello','good','boy','doiido')

print(':'.join(seq))

hello:good:boy:doiido

 

3.对字典进行操作

seq = {'hello':1,'good':2,'boy':3,'doiido':4}

print(':'.join(seq))

doiido:boy:hello:good

 

4.合并目录

import os

print(os.path.join('/hello/','good/boy/','doiido'))

/hello/good/boy/doiido

 

5.对字符串进行操作, (以 '-'为分隔符)

seq = 'ABC'

print('-'.join(seq))

A-B-C

 

三.Json字典转为SQL语句

#表名polls_questions

table_name = "polls_questions"

 

#需要插入的Json数据
data={'id': 1, 'question_text': 'you buy pro6?', 'pub_date':'2016-07-23 09:58:56.000000'}

 

#对每一个值加单引号
for key in data:
  data[key] = "'" + str(data[key]) + "'"

 

【备注】:对于值为字符串的处理,先获取字符串内容,获取出来是没有引号的,然后转为str类型

print(data['question_text'])
you buy pro6?
print(str(data['question_text']))
you buy pro6?
print("'"+str(data['question_text'])+"'")
'you buy pro6?'

#利用join()函数把id、question_text、pub_date合并在一起(id,question_text,pub_date)
key = ','.join(data.keys())


#利用join()函数把值合并在一起('1','you buy pro6?','2016-07-23 09:58:56.000000')
value = ','.join(data.values())

 

#INSERT INTO polls_questions (id,pub_date,question_text) VALUES ('1','2016-07-23 09:58:56.000000','you buy pro6?')

real_sql = "INSERT INTO " + table_name + " (" + key + ") VALUES (" + value + ")"

 

 四、列表推导式

实现相同的功能,代码更加简洁。

列表推导式写9*9乘法表

print('\n'.join([' '.join(['%s*%s=%s'%(x,y,x*y) for x in range(1,y+1)]) for y in range(1,10)]))

非列表推导式写法

for i in range(1,10):
    for j in range(1, i+1):
        print(str(j)+'*'+str(i)+'='+str(j*i)+' ', end='') # end=''表示输出不换行
    print('\n', end='')

 

参考:http://www.cnblogs.com/hjhsysu/p/5700962.html

转载于:https://www.cnblogs.com/uncleyong/p/6956399.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在 Python join() 函数用于将序列的元素以指定的字符连接成一个字符串。它的语法如下: ``` string.join(iterable) ``` 其,string 是连接序列各元素的字符,iterable 是要连接的序列。 例如,以下代码使用逗号将列表的元素连接成一个字符串: ``` my_list = ['apple', 'banana', 'orange'] result = ','.join(my_list) print(result) ``` 输出结果为: ``` apple,banana,orange ``` 如果要连接的序列包含数字或其他类型的数据,需要先将它们转换成字符串再进行连接。例如: ``` my_list = [1, 2, 3, 4] result = '-'.join(str(x) for x in my_list) print(result) ``` 输出结果为: ``` 1-2-3-4 ``` ### 回答2: join()函数Python字符串的一个方法,它用于将序列的元素以指定的字符连接成一个新的字符串。 该函数的语法为:字符串.join(序列) 其,字符串是用来连接序列元素的分隔符,序列是要连接的元素。 join()函数的主要作用是在序列的每个元素之间添加指定的分隔符,将它们连接起来形成一个新的字符串。这个函数通常用于将列表、元组等序列的元素连接成一个字符串。 举个例子,假设我们有一个列表,其包含了一些名字,我们想要用逗号将它们连接起来形成一个句子。可以使用join()函数来实现: names = ['Alice', 'Bob', 'Charlie', 'Dave'] sentence = ', '.join(names) print(sentence) 输出结果为:Alice, Bob, Charlie, Dave 在这个例子,我们首先定义了一个包含了几个名字的列表names。然后,我们使用join()函数将这些名字连接起来,每个名字之间用逗号和一个空格分隔。最后,通过print()函数打印出了连接后的句子。 需要注意的是,join()函数只能用于字符串的连接,如果序列包含了非字符串类型的元素,需要先将它们转换为字符串再使用join()函数。 总之,join()函数是一个非常实用的字符串方法,可以方便地将序列的元素连接成一个新的字符串。 ### 回答3: Pythonjoin函数是字符串的一个方法,用于将一个可迭代的对象(如列表或元组)的字符串元素连接起来。 具体用法是:通过调用字符串的join方法,传入一个可迭代的对象作为参数,join函数会将这个可迭代对象的元素全部连接起来,并返回一个新的字符串。 例如,我们有一个列表`['Hello', 'World']`,可以使用join函数将其的元素连接成一个字符串: ``` words = ['Hello', 'World'] new_string = ' '.join(words) print(new_string) ``` 上述代码输出的结果是`Hello World`。在这个例子,我们传入的可迭代对象是列表`['Hello', 'World']`,join函数将列表的两个字符串元素连接起来,它们之间使用一个空格作为分隔符。 注意,join函数的调用者是一个字符串,在调用过程,该字符串作为连接符,用于将被连接的字符串元素连接起来。 另外,join函数可以与其他的字符串方法一起使用,例如我们可以将列表的元素全部转换成大写后再连接起来: ``` words = ['Hello', 'World'] new_string = ' '.join([word.upper() for word in words]) print(new_string) ``` 上述代码输出的结果是`HELLO WORLD`。这里使用了列表推导式,将列表的元素转换成大写后再使用join函数连接起来。 总结来说,join函数提供了一种简单且灵活的方法,用于将可迭代对象的字符串元素连接成一个新的字符串。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值