Python:for循环
我正在尝试创建一个for循环,以便在已建立的 字典。但是,我一直得到最后一个值,而不是所有的值 价值观我做错了什么 我当前的字典如下所示:Python:for循环,python,loops,for-loop,Python,Loops,For Loop,我正在尝试创建一个for循环,以便在已建立的 字典。但是,我一直得到最后一个值,而不是所有的值 价值观我做错了什么 我当前的字典如下所示: growth_dict = dict.fromkeys(conc[1:9], '') growth_dict = {'100 ug/ml': '', '12.5 ug/ml': '', '50 ug/ml': '', '0 ug/ml': '', '6.25 ug/ml': '', '25 ug/ml': '', '3.125 ug/ml': '
growth_dict = dict.fromkeys(conc[1:9], '')
growth_dict = {'100 ug/ml': '', '12.5 ug/ml': '', '50 ug/ml': '',
'0 ug/ml': '', '6.25 ug/ml': '', '25 ug/ml': '', '3.125 ug/ml': '',
'1.5625 ug/ml': ''}
cols_list = numpy.loadtxt(fn, skiprows=1, usecols=range(1,9), unpack=True)
numer = (0.301)*960 #numerator
for i in cols_list:
N = i[-1]
No = i[0]
denom = (math.log(N/No)) #denominator
g = numer/denom
当我运行程序并键入“growth_dict”时,它只返回最后一个值作为键的字典:
growth_dict = {'100 ug/ml': 131.78785283808514, '12.5 ug/ml': 131.78785283808514,
'50 ug/ml': 131.78785283808514, '0 ug/ml': 131.78785283808514,
'6.25 ug/ml': 131.78785283808514, '25 ug/ml': 131.78785283808514,
'3.125 ug/ml': 131.78785283808514, '1.5625 ug/ml': 131.78785283808514}
每次执行此操作时,都会覆盖
conc[j]
字典条目的值:
growth_dict[conc[j]] = g
如果要将每个连续的g
追加到字典条目,请尝试以下操作:
for j in conc:
# The first time each key is tested, an empty list will be created
if not instanceof(growth_dict[conc[j]], list):
growth_dict[conc[j]] = []
growth_dict[conc[j]].append(g)
您还可以通过执行以下操作来节省加载数据的大量工作
cols_list = numpy.loadtxt(fn, skiprows=1, usecols=range(1,9), unpack=True)
运行此程序时得到什么输出?您希望得到什么输出?但我认为字典没有“append”属性@ttdinh:这是一个列表字典-每个列表都有。append()谢谢!这是我的第一节编程课,所以我还在努力弄清楚这些东西