Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xcode/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在python中使用ExecuteMy将浮点加载到SQL server_Python_Arrays_List_Pyodbc - Fatal编程技术网

在python中使用ExecuteMy将浮点加载到SQL server

在python中使用ExecuteMy将浮点加载到SQL server,python,arrays,list,pyodbc,Python,Arrays,List,Pyodbc,我正在从一个给我一个浮动列表的源读取一些传感器数据。例如: 传感器数据=[1.1,2.2,1.3,2.5] 我想使用pyodbc的“execute\u many”函数加载这些值;但是,通过测试,我已经验证了数据需要采用这种格式才能加载: 格式化数组=[(1.1)],[(2.2)],[(1.3)],[(2.5)]] 最简单的转换方法是什么?还是有更好的方法来做我想做的事情 我意识到这个问题与: 不过,我也尝试过在ExecuteMy方法中这样做 data = [1.1, 2.2, 3.3, 4.4

我正在从一个给我一个浮动列表的源读取一些传感器数据。例如:

传感器数据=[1.1,2.2,1.3,2.5]

我想使用pyodbc的“execute\u many”函数加载这些值;但是,通过测试,我已经验证了数据需要采用这种格式才能加载:

格式化数组=[(1.1)],[(2.2)],[(1.3)],[(2.5)]]

最简单的转换方法是什么?还是有更好的方法来做我想做的事情

我意识到这个问题与:

不过,我也尝试过在ExecuteMy方法中这样做

data = [1.1, 2.2, 3.3, 4.4]
conn = pyodbc.connect(myString) 
cur = conn.cursor()
cursor.fast_executemany = True
cursor.executemany('insert into testTable (col) values(?);'(data[0:3]))
conn.commit() 
我得到这个输出:

TypeError:(“参数必须位于列表、元组或行”“HY000”“中)

将返回:

[(1.1,), (2.2,), (3.3,), (4.4,)]

感谢您的快速响应!但是,我需要结果在元组中不包含逗号。我认为这可能会让我走上正确的轨道,尽管逗号实际上表明元素是元组,而不是括号中的表达式。它实际上是一个1元素元组,您看到的是Python打印到控制台以显示它们是元组的内容。我在脚本中尝试了它,但仍然得到:TypeError:('Params必须在列表、元组或行中,'HY000')Oops,您显示了元组列表。我觉得你走得太远了:
execute\u many
需要一系列元组、列表或行。所以这应该足够了:
data\u new=[(elem,)for elem in data]
wow我打了个愚蠢的打字错误,是的,它确实有效,谢谢你们!问题解决了。
[(1.1,), (2.2,), (3.3,), (4.4,)]