Heim > Backend-Entwicklung > Python-Tutorial > Fassen Sie die unbeliebten Fähigkeiten von Python zusammen und teilen Sie sie

Fassen Sie die unbeliebten Fähigkeiten von Python zusammen und teilen Sie sie

WBOY
Freigeben: 2022-07-13 12:03:30
nach vorne
1912 Leute haben es durchsucht

Dieser Artikel vermittelt Ihnen relevantes Wissen über Python, in dem hauptsächlich Probleme im Zusammenhang mit unpopulären Techniken organisiert werden, darunter die erste Bibliothek, die tqdm-Bibliothek, delattr, die !cmd-Operation, diese Bibliothek usw. Das Folgende ist Schauen wir uns das an und hoffen, dass es hilft alle.

Fassen Sie die unbeliebten Fähigkeiten von Python zusammen und teilen Sie sie

【Verwandte Empfehlung: Python3-Video-Tutorial

erste Bibliothek

Ja, es ist first, das ist der Name der Bibliothek, derzeit gibt es 124 Sterne first,这是个库的名称,目前124个stars

       first is an MIT-licensed Python package with a simple function that returns the first true value from an iterable, or None if there is none. If you need more power, you can also supply a key function that is used to judge the truth value of the element or a default value if None doesn’t fit your use case.

简单来讲就是会返回第一个正确的可遍历对象。

如第一个例子,第一个正确的可遍历对象为`77`

from first  import firstprint(first([0, None, False, 77,[], (), 42]))
Nach dem Login kopieren

第二个例子用了re正则,我在其基础上进行改动,以便大家更容易理解。

import refrom first import first
re1 = re.compile('(.)b(.*)')re2 = re.compile('a(.*)')# re1,re2换位置结果变化m = first(regexp.match('abcwerfwer') for regexp in [ re2,re1])print(m)if not m:
   print('no match!')elif m.re is re1:
   print('re1', m.group(1))elif m.re is re2:
   print('re2', m.group(1))#<re.match>#re2 bcwerfwer</re.match>
Nach dem Login kopieren

re1,re2换位置结果变化

import refrom first import first
re1 = re.compile('(.)b(.*)')re2 = re.compile('a(.*)')m = first(regexp.match('abcwerfwer') for regexp in [re1, re2])print(m)if not m:
   print('no match!')elif m.re is re1:
   print('re1', m.group(1))elif m.re is re2:
   print('re2', m.group(1))#<re.match>#re1 a</re.match>
Nach dem Login kopieren

tqdm库

这是一个非常有趣的库,stars不算太多,但是可以给你平淡的代码生活中泛起一丝涟漪。
分享一段读取数据后并插入数据的代码,我想将数据插入到df2中,只需在range前加一步即可实现可视化,给你在枯燥的代码时光里带来一丝喜悦

from tqdm import tqdm# 还可以用以下办法是一个道理# from tqdm import trange# for i in trange(0,len(year),96):print(len(year))for i in tqdm(range(0,len(year),96)):
        # print(temp[i:i+96],len(temp[i:i+96]))
        try:
                df2.loc[index,3:99] = list(np.insert(df2.values[:,3:99], index, values=temp[i:i+96], axis=0)[index])
                # print(temp[i:i+96])
                # df.insert(1, '0:00', value=temp[i:i+96], allow_duplicates=True)
                # print(index,'+',len(year))
        except Exception as e:
                pass
        index+=1
Nach dem Login kopieren

Fassen Sie die unbeliebten Fähigkeiten von Python zusammen und teilen Sie sie

delattr

python内置属性,用来删除class类中的属性,咱们以牛客网随机一道题为例

Fassen Sie die unbeliebten Fähigkeiten von Python zusammen und teilen Sie sie

       ListNode类中只有一个__init__属性,delattr函数就是人为删去此属性,在第一个a处会在控制台打印self.val的值,但下一个a处就会出现TypeError: ListNode() takes no arguments,这是因为属性__init__已经被删除,就不需要传入x值,所以出现报错

class ListNode:
    def __init__(self, x):
        self.val = x
        self.next = None
        print(self.val)class Solution:
    def reverseBetween(self , head: ListNode, m: int, n: int) -> ListNode:
        a = ListNode(1)
        delattr(ListNode, '__init__')
        a = ListNode(1)# 报错b= Solution()b.reverseBetween(1,2,3)
Nach dem Login kopieren

!cmd操作

控制台输入!cmd可以直接进入命令提示符模式,spider和pycharm都可使用

Fassen Sie die unbeliebten Fähigkeiten von Python zusammen und teilen Sie sie

this库

这个库恐怕00后全军覆没一首Python

first ist ein MIT-lizenziertes Python-Paket mit einer einfachen Funktion, die den ersten wahren Wert aus einem iterierbaren Wert zurückgibt, oder None, wenn keiner vorhanden ist. Wenn Sie mehr Leistung benötigen, können Sie auch eine Schlüsselfunktion angeben Dies wird verwendet, um den Wahrheitswert des Elements oder einen Standardwert zu beurteilen, wenn None nicht zu Ihrem Anwendungsfall passt.
Um es einfach auszudrücken: Es wird das erste korrekte durchquerbare Objekt zurückgegeben.

Fassen Sie die unbeliebten Fähigkeiten von Python zusammen und teilen Sie sieWie im ersten Beispiel ist das erste korrekte durchquerbare Objekt „77“

#分享一首诗给大家,每个版本都有import this
Nach dem Login kopieren

Das zweite Beispiel verwendet die Re-Regularisierung, und ich habe darauf basierende Änderungen vorgenommen, um es für alle verständlicher zu machen. rrreeere1,re2Ändern Sie das Positionsergebnis

rrreee🎜tqdm-Bibliothek🎜🎜Dies ist eine sehr interessante Bibliothek, es gibt nicht zu viele Sterne, aber sie kann Ihnen Klarheit verschaffen Es gibt eine Welle im Codeleben.
Geben Sie einen Code frei, der Daten liest und einfügt. Ich möchte die Daten in df2 einfügen. Ich muss nur einen Schritt vor range hinzufügen . , bringt Ihnen ein bisschen Freude in der langweiligen Programmierzeit🎜rrreee🎜 at Bildbeschreibung hier einfügen
🎜🎜delattr🎜🎜In Python integrierte Attribute werden zum Löschen von Attributen in der Klasse class verwendet. Nehmen wir als Beispiel eine zufällige Frage von Niuke.com Beispiel🎜🎜Bildbeschreibung hier einfügen🎜🎜 ListNode Es gibt nur ein __init__-Attribut in der Klasse. Die Funktion delattr löscht dieses Attribut beim ersten a wird auf der Konsole ausgegeben, aber TypeError: ListNode() akzeptiert keine Argumente wird beim nächsten a angezeigt Das Attribut __init__ wurde gelöscht, sodass der x-Wert nicht übergeben werden muss, sodass ein Fehler auftritt🎜rrreee🎜!cmd-Vorgang🎜🎜Konsoleneingabe !cmd möglich Geben Sie direkt den Eingabeaufforderungsmodus ein, Spider und Pycharm können alle verwendet werden🎜🎜 Fügen Sie hier eine Bildbeschreibung ein🎜🎜diese Bibliothek🎜🎜Diese Bibliothek könnte von der Post-00er-Generation ausgelöscht werden. Hier ist ein Python-Gedicht🎜rrreee🎜🎜🎜🎜【Verwandte Empfehlung: 🎜Python3 Video-Tutorial🎜】🎜

Das obige ist der detaillierte Inhalt vonFassen Sie die unbeliebten Fähigkeiten von Python zusammen und teilen Sie sie. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage