s[i], s[j] = s[j], s[i]
为什么不直接用sort()排序呢?
with语句可以实现任何try/finally语句实现的功能,而且代码更加清晰简洁。可以对数据库的操作进行封装,封装完成以后,可以使用with语句保证数据库连接无论在什么情况下都会关闭。
还可以使用contextlib模块中的contextmanager进行上下文管理。
from contextlib import contextmanager
import pymysql
@contextmanager
def get_conn(**kwargs):
conn = pymysql.connect(host=kwargs.get('host','localhost'),
user=kwargs.get('user'),
passwd=kwargs.get('password'),
port=kwargs.get('port',3306),
db=kwargs.get('db')
)
try:
yield conn
finally:
if conn:
conn.close()
conn_args = dict(host="10.133.0.46", port=3306, user='rw_aps', password='rw_aps.aac',
db='aac_lens_analysis',connect_timeout=100)
# 对创建的数据库连接进行封装以后,可以使用with语句管理数据库连接,使得代码更加清晰,且不容易出错
with get_conn(**conn_args) as conn:
with conn as cur:
sql = f"select * from aac_lens_analysis.t_mysql_status where pair_date='2020-06-03' and pair_shift='day' "
cur.execute(sql)
results = cur.fetchall()
print(cur.rowcount)