【Python那些事儿】Python字符串连接的5种方法

总结了一下Python字符串连接的5种方法:

  • 加号
    很多语言里面是用加号连接两个字符串,Python里面也是如此直接用 “+” 来连接两个字符串:
print 'Pyt' + 'hon'

结果:

Python
  • 逗号
    如果两个字符串用“逗号”隔开,那么这两个字符串将被连接,但是,字符串之间会多出一个空格:
print 'Pyt','hon'

结果:

Pyt hon
  • 直接连接
    Python 独有的,只要把两个字符串放在一起,中间有空白或者没有空白,两个字符串将自动连接为一个字符串:
print 'Pyt''hon'/print 'Pyt'  'hon'

结果:

Python
  • 格式化
    第四种功能比较强大,借鉴了C语言中 printf 函数的功能,如果你有C语言基础,看下文档就知道了。这种方式用符号“%”连接一个字符串和一组变量,字符串中的特殊标记会被自动用右边变量组中的变量替换:
print '%s %s'%('Pyt', 'hon')#有空格

结果:

Pyt hon
  • join
    就属于技巧了,利用字符串的函数 join 。这个函数接受一个列表,然后用字符串依次连接列表中每一个元素:
str_list = ['Pyt', 'hon']
a = ''
print a.join(str_list)

结果:

Python

使用join的例子:Python随机生成验证码

# -*- coding: utf-8 -*-
import random
def generate_verification_code(len=6):
    ''' 随机生成6位的验证码 '''
    # 注意: 这里我们生成的是0-9A-Za-z的列表,当然你也可以指定这个list,这里很灵活
    # 比如: code_list = ['P','y','t','h','o','n','T','a','b'] # PythonTab的字母
    code_list = [] 
    for i in range(10): # 0-9数字
        code_list.append(str(i))
    for i in range(65, 91): # 对应从“A”到“Z”的ASCII码
        code_list.append(chr(i))
    for i in range(97, 123): #对应从“a”到“z”的ASCII码
        code_list.append(chr(i))
    myslice = random.sample(code_list, len)  # 从list中随机获取6个元素,作为一个片断返回
    verification_code = ''.join(myslice) # list to string
    return verification_code

print generate_verification_code(6)

输出:

Ou1bSM

你可能感兴趣的:(Python)