精华内容
下载资源
问答
  • TextWrapper 模块提供了一些快捷函数,以及可以完成所有工作类 TextWrapper如果你只是要对一两个文本字符串进行自动换行或填充,快捷函数应该就够用了;否则话,你应该使用 TextWrapper 实例来提高效率。...

    TextWrapper 模块提供了一些快捷函数,以及可以完成所有工作的类 TextWrapper

    如果你只是要对一两个文本字符串进行自动换行或填充,快捷函数应该就够用了;否则的话,你应该使用 TextWrapper 的实例来提高效率。

    textwrap.wrap(text, width=70, **kwargs)对 text (字符串) 中的单独段落自动换行以使每行长度最多为 width 个字符。 返回由输出行组成的列表,行尾不带换行符。

    可选的关键字参数对应于 TextWrapper 的实例属性,具体文档见下。 width 默认为 70。

    请参阅 TextWrapper.wrap() 方法了解有关 wrap() 行为的详细信息。

    def wrap(text, width=70, **kwargs):

    """Wrap a single paragraph of text, returning a list of wrapped lines.

    Reformat the single paragraph in 'text' so it fits in lines of no

    more than 'width' columns, and return a list of wrapped lines. By

    default, tabs in 'text' are expanded with string.expandtabs(), and

    all other whitespace characters (including newline) are converted to

    space. See TextWrapper class for available keyword args to customize

    wrapping behaviour.

    """

    w = TextWrapper(width=width, **kwargs)

    return w.wrap(text)

    textwrap.fill(text, width=70, **kwargs)def fill(text, width=70, **kwargs):

    """Fill a single paragraph of text, returning a new string.

    Reformat the single paragraph in 'text' to fit in lines of no more

    than 'width' columns, and return a new string containing the entire

    wrapped paragraph. As with wrap(), tabs are expanded and other

    whitespace characters converted to space. See TextWrapper class for

    available keyword args to customize wrapping behaviour.

    “""

    w = TextWrapper(width=width, **kwargs)

    return w.fill(text)

    对 text 中的单独段落自动换行,并返回一个包含被自动换行段落的单独字符串。 fill() 是以下语句的快捷方式

    "\n".join(wrap(text, ...))

    特别要说明的是,fill() 接受与 wrap() 完全相同的关键字参数。textwrap.shorten(text, width, **kwargs)折叠并截短给定的 text 以符合给定的 width。

    def shorten(text, width, **kwargs):

    """Collapse and truncate the given text to fit in the given width.

    The text first has its whitespace collapsed. If it then fits in

    the *width*, it is returned as is. Otherwise, as many words

    as possible are joined and then the placeholder is appended::

    >>> textwrap.shorten("Hello world!", width=12)

    'Hello world!'

    >>> textwrap.shorten("Hello world!", width=11)

    'Hello [...]'

    """

    w = TextWrapper(width=width, max_lines=1, **kwargs)

    return w.fill(' '.join(text.strip().split()))

    首先将折叠 text 中的空格(所有连续空格替换为单个空格)。 如果结果能适合 width 则将其返回。 否则将丢弃足够数量的末尾单词以使得剩余单词加 placeholder 能适合 width:

    >>>

    >>> textwrap.shorten("Hello world!", width=12)

    'Hello world!'

    >>> textwrap.shorten("Hello world!", width=11)

    'Hello [...]'

    >>> textwrap.shorten("Hello world", width=10, placeholder="...")

    'Hello...'

    可选的关键字参数对应于 TextWrapper 的实际属性,具体见下文。 请注意文本在被传入 TextWrapper 的 fill() 函数之前会被折叠,因此改变 tabsize, exand_tabs, drop_whitespace 和 replace_whitespace 的值将没有任何效果。

    3.4 新版功能.textwrap.dedent(text)移除 text 中每一行的任何相同前缀空白符。

    这可以用来清除三重引号字符串行左侧空格,而仍然在源码中显示为缩进格式。

    请注意制表符和空格符都被视为是空白符,但它们并不相等:以下两行 " hello" 和 "\thello" 不会被视为具有相同的前缀空白符。

    例如

    def test():

    # end first line with \ to avoid the empty line!

    s = '''\

    hello

    world

    '''

    print(repr(s)) # prints ' hello\n world\n '

    print(repr(dedent(s))) # prints 'hello\n world\n'

    textwrap.indent(text, prefix, predicate=None)将 prefix 添加到 text 中选定行的开头。

    通过调用 text.splitlines(True) 来对行进行拆分。

    默认情况下,prefix 会被添加到所有不是只由空白符(包括任何行结束符)组成的行。

    例如

    >>>

    >>> s = 'hello\n\n \nworld'

    >>> indent(s, ' ')

    ' hello\n\n \n world'

    可选的 predicate 参数可用来控制哪些行要缩进。 例如,可以很容易地为空行或只有空白符的行添加 prefix:

    >>>

    >>> print(indent(s, '+ ', lambda line: True))

    + hello

    +

    +

    + world

    3.3 新版功能.wrap(), fill() 和 shorten() 的作用方式为创建一个 TextWrapper 实例并在其上调用单个方法。 该实例不会被重用,因此对于要使用 wrap() 和/或 fill() 来处理许多文本字符串的应用来说,创建你自己的 TextWrapper 对象可能会更有效率。

    文本最好在空白符位置自动换行,包括带连字符单词的连字符之后;长单词仅在必要时会被拆分,除非 TextWrapper.break_long_words 被设为假值。class textwrap.TextWrapper(**kwargs)TextWrapper 构造器接受多个可选的关键字参数。 每个关键字参数对应一个实例属性,比如说

    wrapper = TextWrapper(initial_indent="* ")

    就相当于

    wrapper = TextWrapper()

    wrapper.initial_indent = "* "

    你可以多次重用相同的 TextWrapper 对象,并且你也可以在使用期间通过直接向实例属性赋值来修改它的任何选项。

    TextWrapper 的实例属性(以及构造器的关键字参数)如下所示:width(默认: 70) 自动换行的最大行长度。 只要输入文本中没有长于 width 的单个单词,TextWrapper 就能保证没有长于 width 个字符的输出行。expand_tabs(默认: True) 如果为真值,则 text 中所有的制表符将使用 text 的 expandtabs() 方法扩展为空格符。tabsize(默认: 8) 如果 expand_tabs 为真值,则 text 中所有的制表符将扩展为零个或多个空格,具体取决于当前列位置和给定的制表宽度。

    3.3 新版功能.replace_whitespace(default: True) 如果为真值,在制表符扩展之后、自动换行之前,wrap() 方法将把每个空白字符都替换为单个空格。 会被替换的空白字符如下:制表,换行,垂直制表,进纸和回车 ('\t\n\v\f\r')。

    注解

    如果 expand_tabs 为假值且 replace_whitespace 为真值,每个制表符将被替换为单个空格,这与制表符扩展是 不 一样的。

    注解

    如果 replace_whitespace 为假值,在一行的中间有可能出现换行符并导致怪异的输出。 因此,文本应当(使用 str.splitlines() 或类似方法)拆分为段落并分别进行自动换行。drop_whitespace(默认: True) 如果为真值,每一行开头和末尾的空白字符(在包装之后、缩进之前)会被丢弃。 但是段落开头的空白字符如果后面不带任何非空白字符则不会被丢弃。 如果被丢弃的空白字符占据了一个整行,则该整行将被丢弃。initial_indent(默认: '') 将被添加到被自动换行输出内容的第一行的字符串。 其长度会被计入第一行的长度。 空字符串不会被缩进。subsequent_indent(default: '') 将被添加到被自动换行输出内容除第一行外的所有行的字符串。 其长度会被计入除行一行外的所有行的长度。fix_sentence_endings(默认: False) 如果为真值,TextWrapper 将尝试检测句子结尾并确保句子间总是以恰好两个空格符分隔。 对于使用等宽字体的文本来说通常都需要这样。 但是,句子检测算法并不完美:它假定句子结尾是一个小写字母加字符 '.', '!' 或 '?' 中的一个,并可能带有字符 '"' 或 "'",最后以一个空格结束。 此算法的问题之一是它无法区分以下文本中的 “Dr.”

    [...] Dr. Frankenstein's monster [...]

    和以下文本中的 “Spot.”

    [...] See Spot. See Spot run [...]

    fix_sentence_endings 默认为假值。

    Since the sentence detection algorithm relies on string.lowercase for the definition of “lowercase letter,” and a convention of using two spaces after a period to separate sentences on the same line, it is specific to English-language texts.break_long_words(默认: True) 如果为真值,则长度超过 width 的单词将被分开以保证行的长度不会超过 width。 如果为假值,超长单词不会被分开,因而某些行的长度可能会超过 width。 (超长单词将被单独作为一行,以尽量减少超出 width 的情况。)break_on_hyphens(默认: True) 如果为真值,将根据英语的惯例首选在空白符和复合词的连字符之后自动换行。 如果为假值,则只有空白符会被视为合适的潜在断行位置,但如果你确实不希望出现分开的单词则你必须将 break_long_words 设为假值。 之前版本的默认行为总是允许分开带有连字符的单词。max_lines(默认: None) 如果不为 None,则输出内容将最多包含 max_lines 行,并使 placeholder 出现在输出内容的末尾。

    3.4 新版功能.placeholder(默认: ' [...]') 该文本将在输出文本被截短时出现在文本末尾。

    3.4 新版功能.TextWrapper 还提供了一些公有方法,类似于模块层级的便捷函数:wrap(text)对 text (字符串) 中的单独段落自动换行以使每行长度最多为 width 个字符。 所有自动换行选项均获取自 TextWrapper 实例的实例属性。 返回由输出行组成的列表,行尾不带换行符。 如果自动换行输出结果没有任何内容,则返回空列表。fill(text)对 text 中的单独段落自动换行并返回包含被自动换行段落的单独字符串。

    展开全文
  • excel使用

    2012-11-25 17:06:01
    ,此时C1中数据形式就符合要求了,再用鼠标向下拖动C1单元格,完成对A列和B列的所有内容合并(如图3-4)。合并不同单元格内容,还有一种方法是利用CONCATENATE函数,此函数作用是将若干文字串合并到一个字串...
  • 使用 Gson 自动填充数据模型。 使用 Glide 加载图片。 使用 DiskLRUCache 及自定义增强对首页数据进行缓存。 使用 EventBus 同步不同页面间对象状态。 界面层面 使用 Support Library 中 AppCompat、Design、...
  • 你必须知道495个C语言问题

    千次下载 热门讨论 2015-05-08 11:09:25
    5.16 考虑到有关空指针的所有这些困惑,要求它们内部表示都必须为0不是更简单吗? 5.17 说真,真有机器用非零空指针吗,或者不同类型用不同表示? 地址0上到底有什么? 5.18 运行时整数值0转换为指针...
  • 《你必须知道495个C语言问题》

    热门讨论 2010-03-20 16:41:18
    2.22 有没有一种自动方法来跟踪联合哪个域在使用? 30 枚举 31 2.23 枚举和一组预处理#define有什么不同? 31 2.24 枚举可移植吗? 31 2.25 有什么显示枚举值符号容易方法吗? 31 位域 31 2.26 ...
  • 5.16 考虑到有关空指针的所有这些困惑,要求它们内部表示都必须为0不是更简单吗? 60 5.17 说真,真有机器用非零空指针吗,或者不同类型用不同表示? 61 地址0 上到底有什么? 61 5.18 运行时整数值0...
  • 6.这时软件自动添加基本头文件,因为这个程序我们不需要其他功能,所以 直接点击Next。 7.我们将base class 选为QDialog 对话框类。然后点击Next。 8.点击Finish,完成工程建立。 9.我们可以看见工程中的所有...
  • 1.1.2 从所有行中选择所有列 2 1.2 使用基本WHERE子句进行有选择查询 3 1.2.1 使用WHERE子句指定结果集中返回行 3 1.2.2 组合搜索条件 4 1.2.3 否定搜索条件 5 1.2.4 保持WHERE子句无歧义 5 1.3 ...
  • 不过WM_PAINT确实绝了点,它要求应用程序完成元素界面的所有绘制过程,想象一下如何画出一个完整列表控件?太烦了吧。一般来说,很少有人喜欢使用WM_PAINT,还有其它更细致消息。 3.3.2 WM_ERASEBKGND Windows...
  • 你必须知道495个C语言问题(PDF)

    热门讨论 2009-09-15 10:25:47
    2.7 是否有自动比较结构方法? . . . . . . . . . . . . . . . . . . . . 8 2.8 如何向接受结构参数函数传入常数值? . . . . . . . . . . . . . . 8 2.9 怎样从/向数据文件读/写结构? . . . . . . . . . . . ....
  • 至此我们就实现了图的编号的自动维护,当在第一张图前再插入一张图后,Word会自动把第一张图的题注“图1-1”改为“图1-2”,文档中的“图1-1”也会自动变为“图1-2”。 表格编号的作法与图相同,唯一不同的是...
  •  本书还提供了dba完成本职工作必备基本uniix、sql、pl/sql和数据建模知识,也给出了许多富有趣味性例子,通过这些实例详细、循序渐进地说明了oracle database 11g数据库各个概念和特性。 作译者  Sam...
  • Visual Studio程序员箴言中文扫描PDF

    热门讨论 2010-12-28 01:04:18
    技巧5.16 不让工具箱自动填充在解决方案中找到的所有组件 111 技巧5.17 使用*展开工具箱全部组件,使用/折叠工具箱全部组件 112 技巧5.18 使用ctrl+上箭头和ctrl+下箭头在工具箱控件组之间移动 113 ...
  • MAPGIS地质制图工具

    2013-05-06 16:15:30
    1、 首先用Section打开工程文件,把所有文件设为编辑状态,然后对地形等高线文件进行高程赋值——新建线属性高程字段(原MapGis需要这样做,用Section剖面图菜单下的自动赋高程不需新建此字段(拖动操作))。...
  • Visual Studio程序员箴言--详细书签版

    热门讨论 2012-10-16 20:37:39
    技巧1.10 在编辑器中调换字符、单词和行的顺序 6 技巧1.11 在编辑器中使用键盘快捷键来改变单词的大小写 7 1.1.2 撤销/重复 7 技巧1.12 使用标准工具栏上的撤销堆栈 8 1.2 滚动与导航 8 1.2.1 滚动 8 ...
  • 小日本视频转换器

    2011-11-07 16:03:30
    TMPGEnc 是日本人堀浩开发一套老牌高画质视频编码转换工具软件,在 Canopus ProCoder v2.0 Final 推出以前,一直是视频转换领域画质冠军,支持 VCD、SVCD、DVD 以及所有主流媒体格式 (Windows Media、Real ...
  • 区别在于前者长度不足时,系统自动填充空 格,而后者只占用实际字节空间。 表 数据库页面大 实际最大长度 注:这个限制长度只针对建表情况,在定义变量时候,可以不受这个限制长度限 制 数值数据类型
  • o 3.7 是否有自动比较结构方法? o 3.8 如何向接受结构参数函数传入常数值? o 3.9 怎样从/向数据文件读/写结构? o 3.10 我编译器在结构中留下了空洞, 这导致空间浪费而且无法与外部数据文件进行 "二进制...
  • 网站底部帮助中心里面可以填充关于我们,消费指南,法律声明等介绍信息,怎么在后台中配置这样帮助中心数列表呢? 方法:1、点击 ”运营“ --> ”文章管理“ --> ”分类列表,找到网站帮助分类,点击 ”添加...
  • arcgis工具

    2012-10-22 22:37:31
    例如,选择与道路相交荒地,选择结果将包括该道路在其边界范围之内或在其边界之上的所有荒地。 在…距离范围内(Are within a distance of) 这一方法将选择同一图层或不同图层上相邻或邻近要素。例如,...
  • 请主程/小组长在appbuild.gradle中dependencies引入所有的aar,在config.gradle做好aar版本管理,视情况删除工程中build.gradle打包流程(可保留,应对后续组件功能扩展); 将整理好工程clone多份,删除.git...

空空如也

空空如也

1 2
收藏数 36
精华内容 14
关键字:

怎么完成所有行的自动填充