【问题标题】:How do I tell python the whole value is a string? since my excel formula has apostrophe in it我如何告诉python整个值是一个字符串?因为我的excel公式中有撇号
【发布时间】:2019-11-15 06:55:10
【问题描述】:

在python中

formula = "=sumifs('INVENTORY IN AND OUT'!F:F, 'INVENTORY IN AND OUT'!E:E, "=1",'INVENTORY IN AND OUT'!D:D,"=A",'INVENTORY IN AND OUT'!C:C,"=1") - sumifs('INVENTORY IN AND OUT'!G:G, 'INVENTORY IN AND OUT'!E:E, "=1",'INVENTORY IN AND OUT'!D:D,"=A",'INVENTORY IN AND OUT'!C:C,"=1"

print (formula)

我明白了!!

File "inventory change formula", line 52
    formula = "=sumifs('INVENTORY IN AND OUT'!F:F, 'INVENTORY IN AND OUT'!E:E, "=1",'INVENTORY IN AND OUT'!D:D,"=A",'INVENTORY IN AND OUT'!C:C,"=1") - sumifs('INVENTORY IN AND OUT'!G:G, 'INVENTORY IN AND OUT'!E:E, "=1",'INVENTORY IN AND OUT'!D:D,"=A",'INVENTORY IN AND OUT'!C:C,"=1""
                                                                                                                   ^
SyntaxError: invalid syntax

我的问题是我如何告诉 python 整个值是一个字符串,因为我的公式中有撇号??

【问题讨论】:

  • 尝试在“之前”添加转义字符。

标签: python excel string google-sheets


【解决方案1】:

使用转义符

formula = "=sumifs('INVENTORY IN AND OUT'!F:F, 'INVENTORY IN AND OUT'!E:E, \"=1\",'INVENTORY IN AND OUT'!D:D,\"=A\",'INVENTORY IN AND OUT'!C:C,\"=1\") - sumifs('INVENTORY IN AND OUT'!G:G, 'INVENTORY IN AND OUT'!E:E, \"=1\",'INVENTORY IN AND OUT'!D:D,\"=A\",'INVENTORY IN AND OUT'!C:C,\"=1"

print (formula)

输出

=sumifs('INVENTORY IN AND OUT'!F:F, 'INVENTORY IN AND OUT'!E:E, "=1",'INVENTORY IN AND OUT'!D:D,"=A",'INVENTORY IN AND OUT'!C:C,"=1") - sumifs('INVENTORY IN AND OUT'!G:G, 'INVENTORY IN AND OUT'!E:E, "=1",'INVENTORY IN AND OUT'!D:D,"=A",'INVENTORY IN AND OUT'!C:C,"=1

【讨论】:

    【解决方案2】:

    '''(三引号)开始和结束整个字符串。

    >>> formula = '''=sumifs('INVENTORY IN AND OUT'!F:F, 'INVENTORY IN AND OUT'!E:E, "=1",'INVENTORY IN AND OUT'!D:D,"=A",'INVENTORY IN AND OUT'!C:C,"=1") - sumifs('INVENTORY IN AND OUT'!G:G, 'INVENTORY IN AND OUT'!E:E, "=1",'INVENTORY IN AND OUT'!D:D,"=A",'INVENTORY IN AND OUT'!C:C,"=1'''
    

    输出:

    '=sumifs(\'INVENTORY IN AND OUT\'!F:F, \'INVENTORY IN AND OUT\'!E:E, "=1",\'INVENTORY IN AND OUT\'!D:D,"=A",\'INVENTORY IN AND OUT\'!C:C,"=1") - sumifs(\'INVENTORY IN AND OUT\'!G:G, \'INVENTORY IN AND OUT\'!E:E, "=1",\'INVENTORY IN AND OUT\'!D:D,"=A",\'INVENTORY IN AND OUT\'!C:C,"=1'
    

    【讨论】:

      【解决方案3】:

      您必须适当地转义引号。另外,我确实注意到您忘记了字符串中的最后一个括号。

      试试tris:

      formula = "=sumifs('INVENTORY IN AND OUT'!F:F, 'INVENTORY IN AND OUT'!E:E, \"=1\",'INVENTORY IN AND OUT'!D:D,\"=A\",'INVENTORY IN AND OUT'!C:C,\"=1\") - sumifs('INVENTORY IN AND OUT'!G:G, 'INVENTORY IN AND OUT'!E:E, \"=1\",'INVENTORY IN AND OUT'!D:D,\"=A\",'INVENTORY IN AND OUT'!C:C,\"=1\")"
      
      print(formula)
      

      输出:

      =sumifs('INVENTORY IN AND OUT'!F:F, 'INVENTORY IN AND OUT'!E:E, "=1",'INVENTORY IN AND OUT'!D:D,"=A",'INVENTORY IN AND OUT'!C:C,"=1") - sumifs('INVENTORY IN AND OUT'!G:G, 'INVENTORY IN AND OUT'!E:E, "=1",'INVENTORY IN AND OUT'!D:D,"=A",'INVENTORY IN AND OUT'!C:C,"=1")
      

      【讨论】:

        猜你喜欢
        • 2022-08-16
        • 1970-01-01
        • 1970-01-01
        • 2014-12-21
        • 1970-01-01
        • 2013-02-05
        • 2022-11-24
        • 1970-01-01
        • 2013-12-04
        相关资源
        最近更新 更多