I suddenly became interested in the recognition of verification codes recently, and then I studied some information on image recognition and processing. One of the image processing is about font refinement and skeleton extraction, but this algorithm is not available in Java. Code implementation, most of the so-called Java version codes are very poor or not effective at all. During the search, I saw a detailed skeleton lifting algorithm implemented in python. The effect is very good, so I thought of rewriting this python implementation. It's good to turn it into Java... But, actually, I don't understand python, so I first went to w3c to read the python syntax, and then started to rewrite it... The problem occurred... when I encountered the logical operator and in the source program At that time, I hesitated... Let's take a look at the explanation of and in w3c:
布尔"与" - 如果x为False,x and y返回False,否则它返回y的计算值。
After seeing this concise explanation, I was shocked... What exactly is it talking about... What does this have to do with logical AND? Relationship... How come the definition of logical AND in Python is so weird... Forget it, just use if else to translate this paragraph and forget it... But then the source program The statements xx and xx and xx appeared in it. It would be easy to use if else to translate it... I suddenly thought how could a normal person's brain predict the meaning of this expression if it followed this logic... python Logical AND shouldn't be weird, but this explanation should be weird...I reorganized my thoughts...
The definition of logical AND (&&) in Java is very clear, and the explanation is as follows :
与:a & b :当a,b同时为true时,a&b为true,否则为false逻辑与:a && b,当a为false时,那么a && b就直接返回false,不会对b再进行判断,因为当a为false时候,无论b为何值,表达式a && b根据与的定义都将是false..但是如果a为true,则需要进一步计算b的值,根据b的值不同,表达式a && b的最终值也不同.
After comparing w3c’s explanation, I found that they were talking about the same thing. But w3c’s explanation is somewhat misleading. It overemphasizes that the value of the expression is x or y. It downplays the meaning of the expression. It gives people the illusion that the value of the logical AND is not the AND, but the value of a or b under certain circumstances..
[Related recommendations]
1. Python and, or and and-or syntax summary
2. Analysis of the usage of and and or in python
3 . Detailed introduction to the actual usage of and and or in Python
4. Sharing an example tutorial on the operation logic of and / or in Python
5. Python: Examples of logical judgments and operators
6. Basic content of Python: operators
The above is the detailed content of Summary of Python's logical operators and. For more information, please follow other related articles on the PHP Chinese website!

Pythonlistsareimplementedasdynamicarrays,notlinkedlists.1)Theyarestoredincontiguousmemoryblocks,whichmayrequirereallocationwhenappendingitems,impactingperformance.2)Linkedlistswouldofferefficientinsertions/deletionsbutslowerindexedaccess,leadingPytho

Pythonoffersfourmainmethodstoremoveelementsfromalist:1)remove(value)removesthefirstoccurrenceofavalue,2)pop(index)removesandreturnsanelementataspecifiedindex,3)delstatementremoveselementsbyindexorslice,and4)clear()removesallitemsfromthelist.Eachmetho

Toresolvea"Permissiondenied"errorwhenrunningascript,followthesesteps:1)Checkandadjustthescript'spermissionsusingchmod xmyscript.shtomakeitexecutable.2)Ensurethescriptislocatedinadirectorywhereyouhavewritepermissions,suchasyourhomedirectory.

ArraysarecrucialinPythonimageprocessingastheyenableefficientmanipulationandanalysisofimagedata.1)ImagesareconvertedtoNumPyarrays,withgrayscaleimagesas2Darraysandcolorimagesas3Darrays.2)Arraysallowforvectorizedoperations,enablingfastadjustmentslikebri

Arraysaresignificantlyfasterthanlistsforoperationsbenefitingfromdirectmemoryaccessandfixed-sizestructures.1)Accessingelements:Arraysprovideconstant-timeaccessduetocontiguousmemorystorage.2)Iteration:Arraysleveragecachelocalityforfasteriteration.3)Mem

Arraysarebetterforelement-wiseoperationsduetofasteraccessandoptimizedimplementations.1)Arrayshavecontiguousmemoryfordirectaccess,enhancingperformance.2)Listsareflexiblebutslowerduetopotentialdynamicresizing.3)Forlargedatasets,arrays,especiallywithlib

Mathematical operations of the entire array in NumPy can be efficiently implemented through vectorized operations. 1) Use simple operators such as addition (arr 2) to perform operations on arrays. 2) NumPy uses the underlying C language library, which improves the computing speed. 3) You can perform complex operations such as multiplication, division, and exponents. 4) Pay attention to broadcast operations to ensure that the array shape is compatible. 5) Using NumPy functions such as np.sum() can significantly improve performance.

In Python, there are two main methods for inserting elements into a list: 1) Using the insert(index, value) method, you can insert elements at the specified index, but inserting at the beginning of a large list is inefficient; 2) Using the append(value) method, add elements at the end of the list, which is highly efficient. For large lists, it is recommended to use append() or consider using deque or NumPy arrays to optimize performance.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 English version
Recommended: Win version, supports code prompts!

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

Dreamweaver CS6
Visual web development tools

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft
