用Python将字符串里的英文双引号转换成中文双引号

该博客介绍了如何使用Python高效地将字符串中的英文双引号转换为中文双引号。通过示例代码展示了两种不同的解决方案,一种利用reduce和zip函数,另一种使用itertools.cycle和正则表达式替换。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一道小题,用Python将字符串里的英文双引号转换成中文双引号
要求:高效算法
输入参数:基本原则"这"是一个"测试用例",完毕
结果:基本原则“这”是一个“测试用例”,完毕

以下来自: https://gist.github.com/1350419
#!/usr/bin/env python
# -*- coding: utf-8 -*-
'''
Author: Feather
FileName: chnquote.py
Date: 11-09-2011
Description: 中文引号处理转换
'''
import operator
import itertools

def convert(sent):
    def double_quote_gen():
        yield u""
        while 1:
            yield u"“"
            yield u"”"

    assert isinstance(sent, unicode)
    seg = sent.split('"')
    if len(seg) % 2 != 1:
        raise RuntimeError('non-balenced quotes!')
    newseg = reduce(tuple.__add__, zip(double_quote_gen(), seg ))
    newsent = reduce(unicode.__add__, newseg)
    return newsent

def te
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值