मेरे पास एक क्यूआर रीडर है। जब क्यूआर रीडर स्कैन करता है, तो मैं इसे स्कैन करने की निगरानी करना चाहता हूं, लेकिन मैंने एक अजीब समस्या में भाग लिया है, और जैसा कि मैं पाइथन के लिए इतना नया हूं, मुझे वास्तव में पता नहीं है कि यह क्यों हो रहा है। ठीक है, नीचे दो अलग-अलग (मेरे लिए) समान कार्यक्रम हैं, लाइन के अलावा। जब वह रेखा हटा दी जाती है, तो मुझे अलग-अलग परिणाम मिलते हैं (प्रतीत होता है कि वर्णमाला परिवर्तन)। मैं वास्तव में समझ में नहीं आता क्यों।पायथन में अजीब व्यवहार, रेखा गायब, विभिन्न आउटपुट
test2.py:
H
HT
HTT
HTTP
HTTP:
HTTP:?
HTTP:??
HTTP:??G
HTTP:??GO
HTTP:??GOO
HTTP:??GOOG
HTTP:??GOOGL
HTTP:??GOOGLE
HTTP:??GOOGLE>
HTTP:??GOOGLE>C
HTTP:??GOOGLE>CO
HTTP:??GOOGLE>COM
HTTP:??GOOGLE>COM
और अब test3.py:
# -*- coding: utf-8 -*-
import pyHook
import pythoncom
import re
import webbrowser
endDomains = ".com|.net|.org|.edu|.gov|.mil|.aero|.asia|.biz|.cat|.coop|.info|.int|.jobs|.mobi|.museum|.name|.post|.pro|.tel|.travel".split("|")
chars = ""
def pressed_chars(event):
global chars
if event.Ascii:
char = chr(event.Ascii)
if event.Ascii == 3:
quit()
else:
chars += char
print chars
proc = pyHook.HookManager()
proc.KeyDown = pressed_chars
proc.HookKeyboard()
pythoncom.PumpMessages()
उत्पादन
# -*- coding: utf-8 -*-
import pyHook
import pythoncom
import re
import webbrowser
chars = ""
def pressed_chars(event):
global chars
if event.Ascii:
char = chr(event.Ascii)
if event.Ascii == 3:
quit()
else:
chars += char
print chars
proc = pyHook.HookManager()
proc.KeyDown = pressed_chars
proc.HookKeyboard()
pythoncom.PumpMessages()
जब सामग्री http://google.com
साथ एक QR कोड स्कैन निम्नलिखित उत्पादन का उत्पादन निम्नलिखित आउटपुट:
h
ht
htt
http
http;
http;/
http;//
http;//g
http;//go
http;//goo
http;//goog
http;//googl
http;//google
http;//google.
http;//google.c
http;//google.co
http;//google.com
http;//google.com
यदि मैं endDomains
चर के किसी भी भाग को हटाता हूं, तो प्रोग्राम बदलता है। क्या ऐसे कुछ पात्र हैं जिन्हें मैं नहीं देख सकता कि मैं हटा रहा हूं या कुछ चीजें बदलता हूं? पृथ्वी पर क्यों एक पाइप को हटाते समय पाइथन इन दो पूरी तरह से अलग-अलग परिणामों का उत्पादन करता है जो प्रोग्राम का उपयोग भी नहीं करता है?
संपादित करें: ऐसा लगता है कि यह .split("|")
से जुड़ा हुआ है, और इसके बजाय चर नहीं है। यदि मैं .split("|")
हटा देता हूं तो प्रोग्राम फिर से टूट जाता है।
दूसरा संपादित मूल स्रोत है कि मैं प्रयोग किया जाता है के लिए क्रेडिट Janekmuric from their answer here.
शायद किसी अन्य फ़ाइल ने इस फ़ाइल को आयात किया है और उस फ़ाइल में 'endDomains' का उपयोग किया जा रहा है। – ZdaR
@ZdaR, ओह? मैं इसका परीक्षण कैसे करूं? – Chud37
आउटपुट को फिर से जांचने के लिए 'end_domains' जैसे अन्य नामों में 'endDomains' को बदलना। –