@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的新任何帮助将不胜感激。
答案 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