国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

python設置了值更改語句,為什么沒起作用?

瀏覽:106日期:2022-06-27 11:01:33

問題描述

我想將文件的數據有的則設為原來的值,沒有的值則設為0,可是最后結果都是0,代碼哪里不正確?原始數據圖片描述處理結果 圖片描述

#!/usr/bin/python#coding:utf-8train_data = {}input_data = open('train_tfidf.txt', 'r').readlines()output_data = open('single_tfidf.txt', 'w')for line in input_data: temp_dict = {} for i in range(60304):temp_dict[i] = 0 datas = line.split() for ele in datas:try: word_index = ele.split(':')[0] tfidf = ele.split(':')[1] if word_index == i:temp_dict[i] = tfidfexcept: continue # print temp_dict # print word_index, tfidf output_data.write(str(temp_dict)) output_data.write(’n’) [1]: /img/bVPJMi [2]: /img/bVPJMV

問題解答

回答1:

由于你range()跑完了再去遍歷的datas,由于range()是個迭代函數,所以在運行datas的for循環的時候,i的值一直是60303,所以也就不滿足if word_index == i這個條件了,所以除了60303那項,其他的都還是初始值。其實建議這樣改

if word_index == i: temp_dict[i] = tfidf

這邊可以直接判斷temp_dict[word_index]是否存在為0,如果沒有定義,則應該是None,所以這塊改為

if temp_dict[word_index] == 0: temp_dict[word_index] = tfidf

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 进贤县| 肥城市| 北流市| 大田县| 东丰县| 安西县| 雷山县| 滁州市| 贵溪市| 奈曼旗| 合阳县| 建昌县| 晋江市| 海兴县| 石景山区| 盈江县| 仲巴县| 宜良县| 隆子县| 凤山市| 东方市| 汶上县| 乌鲁木齐市| 泰宁县| 星子县| 衡南县| 深州市| 专栏| 安康市| 江山市| 犍为县| 长子县| 准格尔旗| 太白县| 明溪县| 泾阳县| 黑水县| 阿克| 南涧| 泸溪县| 芜湖县|