将Long转换为String Python

时间:2016-03-31 21:29:53

标签: python python-2.7

@staticmethod
def next_group_id():
    cursor = connections['ips4'].cursor()
    cursor.execute(Ips4Manager.SQL_GET_ALL_GROUP_IDS)
    row = cursor.fetchall()
    if row is not None:
        string_num = str(row)
        max_number = max(string_num)
        print max_number
    else:
        logger.debug("cannot determine next group id")
        return False
outputs : (8L,)

将转换为字符串的最有效方法是什么,所以我只得到8? 我在python的新任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

您所看到的是row中的信息实际上是元组列表。每个元组都有一个成员。

尝试打印max(row)[0]

参见此示例;

In [7]: row = [(1,), (2,), (8,)]

In [8]: max(row)
Out[8]: (8,)

In [9]: print(max(row)[0])
8

(你之前没有看到L因为我使用的是Python 3)

只是为了证明它适用于Python 2:

Python 2.7.11 (default, Jan  9 2016, 15:47:04) 
[GCC 4.2.1 Compatible FreeBSD Clang 3.4.1 (tags/RELEASE_34/dot1-final 208032)] on freebsd10
Type "help", "copyright", "credits" or "license" for more information.
>>> row = [(1L,), (2L,), (8L,)]
>>> max(row)
(8L,)
>>> print(max(row)[0])
8