我不确定在什么标题下完全考虑这个问题,编码高尔夫看起来是合适的,如果有点不明确.
我对python有一点了解,但看起来很难"阅读".我看到它的方式,理解可能会完成与以下代码相同:
for i in range(10): if i == 9: print('i equals 9')
Run Code Online (Sandbox Code Playgroud)
这段代码比理解目前的工作方式更容易阅读,但我注意到你不能在一行中有两个':'......这也带给我了...
有什么方法可以让以下示例进入ONE LINE.
try:
if sam[0] != 'harry':
print('hello', sam)
except:
pass
Run Code Online (Sandbox Code Playgroud)
像这样的东西会很棒:
try: if sam[0] != 'harry': print('hellp', sam)
except:pass
Run Code Online (Sandbox Code Playgroud)
但是我又遇到了相互冲突的':'我也很想知道是否有办法运行尝试(或类似的东西),除非,我需要放置除了之外似乎完全没有意义:传入那里.这是一条浪费的线.
谢谢你输入......这里有一个笑脸:D
如何跳过循环使用pdb.set_trace()?
例如,
pdb.set_trace()
for i in range(5):
print(i)
print('Done!')
Run Code Online (Sandbox Code Playgroud)
pdb在循环之前提示.我输入一个命令.返回所有1-5个值,然后我希望pdb在print('Done!')执行之前再次提示.
Hi Stack Overflow用户,
我遇到了一个令人沮丧的问题,找不到答案.
昨天我试图找到一种隐藏子进程的方法.Popen.例如,如果我打开cmd.我希望它永久隐藏起来.
我找到了这段代码:
kwargs = {}
if subprocess.mswindows:
su = subprocess.STARTUPINFO()
su.dwFlags |= subprocess.STARTF_USESHOWWINDOW
su.wShowWindow = subprocess.SW_HIDE
kwargs['startupinfo'] = su
subprocess.Popen("cmd.exe", **kwargs)
Run Code Online (Sandbox Code Playgroud)
它就像一个魅力!
但今天,由于我不需要进入的原因,我不得不重新安装python 3(32位)
现在,当我运行我的程序时,我收到此错误:
Traceback (most recent call last):
File "C:\Python31\hello.py", line 7, in <module>
su.dwFlags |= subprocess.STARTF_USESHOWWINDOW
AttributeError: 'module' object has no attribute 'STARTF_USESHOWWINDOW'
Run Code Online (Sandbox Code Playgroud)
我正在使用32位,python3.1.3 ......就像之前一样.
如果你有任何线索/替代品请发布,谢谢.
注意:我正在寻找一种SHORT方法来隐藏应用程序,而不是请两页代码
我已经升级到 Selenium 4
new_binary_path = FirefoxBinary('path_to_binary')
selenium.webdriver.Firefox(executable_path=path, options=ops, firefox_binary=new_binary_path)
Run Code Online (Sandbox Code Playgroud)
或者
options.add_argument("--setBinary(path_to_binary)")
selenium.webdriver.Firefox(executable_path=path, options=ops)
Run Code Online (Sandbox Code Playgroud)
返回此错误信息
DeprecationWarning: executable_path has been deprecated, please pass in a Service object
Run Code Online (Sandbox Code Playgroud)
文档
https://github.com/SeleniumHQ/selenium/blob/master/javascript/node/selenium-webdriver/CHANGES.md
说
删除了 firefox.Binary 类。仍然可以使用 firefox.Options#setBinary() 选择自定义二进制文件。同样,可以使用 firefox.Options#addArguments() 指定自定义二进制参数
有谁知道如何实施这些更改?我不知道标签是什么意思。我尝试过options.setBinary()但setBinary()没有被识别。
我正在使用cx_freeze来冻结tkinter应用程序.当我运行exe时,我得到一个奇妙的USELESS控制台窗口以及我的tkinter GUI.
我想删除/隐藏这个无用的黑色窗口.
我见过线程提示如下:
root = tkinter.Tk()
root.withdraw()
Run Code Online (Sandbox Code Playgroud)
上面的代码与我想要的完全相反.它隐藏了我的GUI,而无用的黑色窗口仍然存在.我希望它是另一种方式.
在花了很多时间试图绕过多处理之后我想出了这个代码,这是一个基准测试:
例1:
from multiprocessing import Process
class Alter(Process):
def __init__(self, word):
Process.__init__(self)
self.word = word
self.word2 = ''
def run(self):
# Alter string + test processing speed
for i in range(80000):
self.word2 = self.word2 + self.word
if __name__=='__main__':
# Send a string to be altered
thread1 = Alter('foo')
thread2 = Alter('bar')
thread1.start()
thread2.start()
# wait for both to finish
thread1.join()
thread2.join()
print(thread1.word2)
print(thread2.word2)
Run Code Online (Sandbox Code Playgroud)
这在2秒内完成(多线程的一半).出于好奇,我决定下次运行:
例2:
word2 = 'foo'
word3 = 'bar'
word = 'foo'
for i in range(80000):
word2 = …Run Code Online (Sandbox Code Playgroud) 据我所知,cx_freeze是唯一能够将Python脚本制作成.exe文件的应用程序.但是,我想exe在Python 3中创建一个GUI .在冻结一个简单的Tkinter GUI并运行exe之后,我收到以下错误:
> _tkinter.TclError: Can't find a usable init.tcl in the following directories:
> {C:\Users\User\Desktop\tkinter\build\exe.win32-3.1\tcl}
> C:/Users/User/Desktop/tkinter/build/exe.win32-3.1/tcl8.5
> C:/Users/User/Desktop/tkinter/build/lib/tcl8.5
> C:/Users/User/Desktop/tkinter/build/lib/tcl8.5
> C:/Users/User/Desktop/tkinter/lib/tcl8.5
> C:/Users/User/Desktop/tkinter/build/library
> C:/Users/User/Desktop/tk inter/library
> C:/Users/User/Desktop/tkinter/tcl8.5.2/library
> C:/Users/User/Desktop/tcl8.5.2/library
> This probably means that Tcl wasn't installed properly.
Run Code Online (Sandbox Code Playgroud)
我正在使用简单的设置 cx_freeze选项.
我的cx_freeze exe包保存到以下目录:
C:\Users\User\Desktop\tkinter\build\exe.win32-3.1
Run Code Online (Sandbox Code Playgroud)
文件是:
_ctypes.pyd
_tkinter.pyd
basicLABEL.exe
library.zip
python31.dll
tcl85.dll
tk85.dll
unicodedata.pyd
Run Code Online (Sandbox Code Playgroud) 我想捕获套接字超时(最好是在异常中)... except urllib.error.URLError:可以捕获它但我需要区分死链接和超时....如果我取出except urllib.error.URLError:套接字超时不捕获和脚本终止socket.timeout错误
import urllib.request,urllib.parse,urllib.error
import socket
import http
socket.setdefaulttimeout(0.1)
try:
file2 = urllib.request.Request('http://uk.geforce.com/html://')
file2.add_header("User-Agent","Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.29 Safari/525.13")
file3 = urllib.request.urlopen(file2).read().decode("utf8", 'ignore')
except urllib.error.URLError: print('fail')
except socket.error: print('fail')
except socket.timeout: print('fail')
except UnicodeEncodeError: print('fail')
except http.client.BadStatusLine: print('fail')
except http.client.IncompleteRead: print('fail')
except urllib.error.HTTPError: print('fail')
print('done')
Run Code Online (Sandbox Code Playgroud) 我是子处理的新手.
我只需要一个非常简单的win32示例,即parent.py和child.py之间的communication().从parent.py发送到child.py的字符串,由child.py更改,并从parent.py发送回parent.py以获取print().
我发布这个是因为我发现的例子最终要么不是win32,要么不使用让我困惑的孩子.
谢谢你的帮助.
我想编写一个Python脚本来自动登录我的宽带使用率计帐户.我之前从未做过POST提交,而且我遇到了一些问题.
import urllib.request, urllib.parse, urllib.error
import socket
try:
details = urllib.parse.urlencode({ 'IDToken1': 'USERNAME', 'IDToken2': 'PASSWORD' })
url = urllib.request.Request('https://login1.telecom.co.nz/distauth/UI/Login?realm=XtraUsers&goto=https%3A%2F%2Fwww.telecom.co.nz%3A443%2Fjetstreamum%2FxtraSum%3Flink%3Drdt', details)
url.add_header("User-Agent","Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.29 Safari/525.13")
responseData = urllib.request.urlopen(url).read().decode('utf8', 'ignore')
responseFail = False
except urllib.error.HTTPError as e:
responseData = e.read().decode('utf8', 'ignore')
responseFail = False
except urllib.error.URLError:
responseFail = True
except socket.error:
responseFail = True
except socket.timeout:
responseFail = True
except UnicodeEncodeError:
print("[x] Encoding Error")
responseFail = True
print(responseData)
Run Code Online (Sandbox Code Playgroud)
从我导出的HTML IDToken1是用户名id,IDToken2是密码id. …
python ×6
python-3.x ×6
cx-freeze ×2
subprocess ×2
tkinter ×2
benchmarking ×1
communicate ×1
debugging ×1
geckodriver ×1
multiprocess ×1
pdb ×1
pipe ×1
post ×1
selenium ×1
sockets ×1
timeout ×1
urllib ×1