If you want to know which parcel the well point is on, why not do a spatial join first, that way you only need to iterate over 1 attribute table, after you do the spatial join.
ArcGIS Help (10.2, 10.2.1, and 10.2.2)
You will need to add another field to your points, so you can put "YES" it in.
This way you should only need 1 search cursor, which will need the the field names for the well owner, parcel owner, and field name that will contain the "Yes".
so after doing a spatial join and adding your new field it would look something like this.
import arcpy
wells = "path here"
wellowner = "Owner" #or whatever your field name is
parcelowner = "Owner1" #or whatever your field name is
with arcpy.da.UpdateCursor(wells, [wellowner, parcelowner, "Nameofyournewfieldhere"]) as cursor:
for row in cursor:
if row[0] == row[1]:
row[2] = "YES"
cursor.updateRow(row)
else:
continue
You did pretty well with your code, cursors can take a little while to get use to.
A little critique of your code:
import arcpy #perfect!
wells = "path here" #good
parcels = "path here" # good
owner = ["Owner"] #no brackets needed, you want a string not a list(though it turns out okay in this case)
powner = ["Owner1"] #see above
cursor = arcpy.da.UpdateCursor(wells, ["Public"]) #correct syntax for making a cursor, kudos for using the data access cursor
wellowner = arcpy.da.SearchCursor(wells, owner) #again correct syntax
parcelowner = arcpy.da.SearchCursor(parcels, powner)#ditto
if ( wellowner == parcelowner ) : #here would be the problem, you are comparing two cursor objects and not their values
for row in cursor: #correct syntax for accessing your update cursor object
row = YES #would be row[indexvalueofyourfield] See my example
else row = cursor.next()
A good attempt for a first time, I would recommend trying some of their sample code first to get use to the syntax and outputs.