python的騷操作

2021-10-10 13:15:51 字數 1691 閱讀 9677

1.列表生成。

```

c = [1, 3, -3, 4, -2, 8, -7, 6]

d = [x for x in c if x > 0]

print(d)

```執行結果[1, 3, 4, 8, 6]

還可以在dataframe中計算累計數:

mongroups['累計餘額']=[mongroups.loc[0:x,'餘'].sum() for x in range(0,len(mongroups))]

2 union 是當有多種可能的資料型別時使用,比如函式有可能根據不同情況有時返回str或返回list,那麼就可以寫成 union[list, str]

在類宣告中表現為:

settings: union["settings", none] = none
pandas,dataframe刪除符合條件的行。"~",操作符號在c語言中為位非操作。

self.pgdf.dataframe=ivoucher[~(ivoucher['科目'].isin([none,np.nan,pd.na,""," "]))].
4.dataframe插入乙個空行,不用費心吧啦、苦心苦力得為每乙個列賦值。簡簡單單找乙個列賦值為以下任一none、na、nan。

找到更簡單的

[{}],框框包花花。就這麼簡單,這麼神奇。

5.修改dataframe的值。可以保證,第一遍除錯中code1實現過修改目的,可以第二天再次執行後,奇蹟失效了。code2上場。只要能行,只能認了。當成未解之謎供著。

code1

accounttable.iloc[j].at['**']

code2

accounttable.loc[j],'**']

6.pandas沒有isnotin,有符號~

accounttable=accounttable.loc[~accounttable['科目'].isin(['',pd.na,np.nan,none])]
7.新增合計列、行的方法

mongroups['累計餘額']=[mongroups.loc[0:x,'餘'].sum() for x in range(0,len(mongroups))]
8.zip,很形象的函式,像拉鍊一樣把兩個list組成乙個list、dict

cols_dtype_dict = dict(zip(object_cols, dtype_list))
9.python擷取字串。比較粗魯。數字直接代表所在位置,而不是bat批處理所用的起始位置加擷取長度。對於習慣bat也算一不小心坑到牙疼的硬茬。

y=date[0:4]

m=date[4:6]

10.看模組函式

#檢視模組函式

#print([e for e in dir(qtwebenginewidgets.qwebengineview) if (not e.startswith('_')) and ('set' in e) ])

#print([e for e in dir(qtwidgets.qpushbutton.__all__) if not e.startswith('_')])

mysql騷操作 Mysql騷操作 優化大分頁查詢

系統結構如上圖。經過排查是因為系統b拉取資料時間太長導致的推送超時。系統b拉取資料的方法是根據 tiemstamp 資料操作時間 分頁查詢系統a的介面,即 1select?欄位名2from?表名3where?timestamp?begintime?and?timestamp?endtime?4lim...

string的騷操作

炒雞簡單的題目,大牛們都不看在眼裡的,怪我哦!輸入一行數字,如果我們把這行數字中的 5 都看成空格,那麼就得到一行用空格分割的若干非負整數 可能有些整數以 0 開頭,這些頭部的 0 應該被忽略掉,除非這個整數就是由若干個 0 組成的,這時這個整數就是0 你的任務是 對這些分割得到的整數,依從小到大的...

Python騷操作 動態定義函式

譯者 豌豆花下貓 基於 mit 許可協議 在 python 中,沒有可以在執行時簡化函式定義的語法糖。然而,這並不意味著它就不可能,或者是難以實現。from types import functiontype foo code compile def foo return bar exec foo ...