第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用列表創(chuàng)建帶有重復片段的字符串

使用列表創(chuàng)建帶有重復片段的字符串

翻閱古今 2021-06-04 10:05:53
我正在尋找一種優(yōu)雅的方式來實現(xiàn)以下目標:我有一個列名列表(大小是動態(tài)的,取決于源文件):columns = ['col1', 'col2', 'col3']和列大小列表:leng = [20, 30, 15]我想實現(xiàn)字符串:a = 'CREATE TABLE dbo.table     (      [col1] varchar(20)     ,[col2] varchar(30)     ,[col3] varchar(15)     )'我可以使用以下方法生成:a = 'CREATE TABLE dbo.table\n(\n('for i in range(len(columns)):    a = a + '[' + col[i] + '] varchar(' + str(leng[i]) + ')\n'a = a + ')'print(a)我想知道列名部分是否可以使用格式函數(shù)替換,或者比“for”循環(huán)更優(yōu)雅。
查看完整描述

2 回答

?
寶慕林4294392

TA貢獻2021條經(jīng)驗 獲得超8個贊

使用str.join和str.format


前任:


columns = ['col1', 'col2', 'col3']

leng = [20, 30, 15]


sampleStr = """CREATE TABLE dbo.table

     (

      {}

     )"""


print( sampleStr.format(",".join(["[{}] varchar({})".format(i, j) for i,j in zip(columns, leng)])) )

輸出:


CREATE TABLE dbo.table

     (

      [col1] varchar(20),[col2] varchar(30),[col3] varchar(15)

     )


查看完整回答
反對 回復 2021-06-06
?
月關(guān)寶盒

TA貢獻1772條經(jīng)驗 獲得超5個贊

使用zip并行連接列及其長度。


a = ('CREATE TABLE dbo.table (' 

     + ', '.join(['[{}] varchar({})'.format(col, n) 

                  for col, n in zip(columns, leng)])

     + ')'

     )


>>> a

'CREATE TABLE dbo.table ([col1] varchar(20), [col2] varchar(30), [col3] varchar(15))'


查看完整回答
反對 回復 2021-06-06
  • 2 回答
  • 0 關(guān)注
  • 144 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號