一.python格式化字符串的方法
1.%格式化字符串
先说基础知识,细节看下方参考
## "xxx %s xxx %s" % (value1, value2)
name = 'Alex'
age = 18
print("My name is %s ,I'm %s years old " % (name,age))
# My name is Alex ,I'm 18 years old
2.format() 方法
str.format()
# 使用名称占位符
res = "My name is {name} ,I'm {age} years old ".format(name="Alex",age=18)
print(res)
# My name is Alex ,I'm 18 years old
# 使用序号占位符,为空默认从左到右01234.。。
res = "My name is {} ,I'm {} years old ".format("Alex",18) #顺序对应时序号可不写
res = "My name is {0} ,I'm {1} years old ".format("Alex",18)
print(res)
# 混合使用
res= "My name is {} ,I'm {} years old,I am a {profession}.".format(name,age,profession="student")
print(res)
3.f-string
res = f"My name is {name} ,I'm {age} years old "
print(res)
详细的格式化字符串内容参考:
https://blog.csdn.net/zjbyough/article/details/96466658?spm=1001.2014.3001.5506
点击原文
二.SQL实例快速生成
条件语句的批量生成
1.连续值转分组值
SQL如果需要使用CASE WHEN 进行人群分组,多组写起来就会很麻烦,可以用以下代码生成
# 1.连续值转分组值
# 分值按10间隔进行分组
hhh_sql="""
when points > {} and points <={} then '({},{}]'
"""
for i in range(0,100,10):
res = hhh_sql.format(i,i+10,i,i+10)
print(res)
2.自定义参数生成多个SQL脚本
# 2.自定义参数生成多个SQL脚本
# 生成一系列的SQL查询语句,统计满足特定日期和条件组合的记录数量
dts = ['20230101','20240101','20240201']
conds = ['class1','class2','class2']
for i in range(len(dts)):
dt = dts[i]
cond = conds[i]
hhh_sql ="""
-- 这是第{}条SQL,日期是{}
select
count(*)
from tableA
where
dt = '{}'
and conds = '{}'
;
"""
res = hhh_sql.format(i+1,dt,dt,cond)
print(res)