Questions tagged «python»

Python是一种多范式,动态类型的多用途编程语言。它旨在快速学习,理解和使用并强制使用干净统一的语法。请注意,Python 2自2020年1月1日起已不再受支持。不过,对于特定于版本的Python问题,请添加[python-2.7]或[python-3.x]标签。使用Python变体或库(例如Jython,PyPy,Pandas,Numpy)时,请将其包含在标签中。

3
如何从字典构造一个defaultdict?
如果我有d=dict(zip(range(1,10),range(50,61)))我怎样才能建立一个collections.defaultdict出来的dict? defaultdict似乎采用的唯一参数是工厂函数,我是否必须先初始化然后再通过原始函数d并更新defaultdict?

6
python pandas dataframe,是按值传递还是按引用传递
如果我将数据帧传递给函数并在函数内部对其进行修改,那么它是按值传递还是按引用传递? 我运行以下代码 a = pd.DataFrame({'a':[1,2], 'b':[3,4]}) def letgo(df): df = df.drop('b',axis=1) letgo(a) a函数调用后,的值不变。这是否意味着价值传递? 我也尝试了以下 xx = np.array([[1,2], [3,4]]) def letgo2(x): x[1,1] = 100 def letgo3(x): x = np.array([[3,3],[3,3]]) 事实证明letgo2(),变化xx并letgo3()没有。为什么会这样呢?

8
如何知道函数的返回类型和参数类型?
虽然我知道Python的鸭子式概念,但有时我会为函数的参数类型或函数的返回值类型而苦恼。 现在,如果我自己编写函数,那么我确实知道类型。但是,如果有人想使用并调用我的函数,他/她应该如何知道类型呢?我通常将类型信息放入函数的文档字符串中(例如:"...the id argument should be an integer..."和"... the function will return a (string, [integer]) tuple.") 但是,查找文档字符串中的信息(并将其作为编码器放置在其中)是否确实是应该完成的方式? 编辑:虽然大多数答案似乎都指向“是的,文档!” 我觉得对于“复杂”类型这并不总是那么容易。例如:如何在文档字符串中简明地描述一个函数返回一个元组列表,每个元组的形式为(node_id,node_name,uptime_minutes),并且元素分别是字符串,字符串和整数? docstring PEP文档未对此提供任何指导。 我想反驳的是在那种情况下应该使用类,但是我发现python非常灵活,因为它允许使用列表和元组(即没有类)传递这些东西。
84 python  types 

6
python selenium单击按钮
我是python selenium的新手,我尝试单击具有以下html结构的按钮: <div class="b_div"> <div class="button c_button s_button" onclick="submitForm('mTF')"> <input class="very_small" type="button"></input> <div class="s_image"></div> <span> Search </span> </div> <div class="button c_button s_button" onclick="submitForm('rMTF')" style="margin-bottom: 30px;"> <input class="v_small" type="button"></input> <span> Reset </span> </div> </div> 我希望能够同时单击上面的Search和Reset按钮(显然是单独单击)。 我尝试了几件事,例如: driver.find_element_by_css_selector('.button .c_button .s_button').click() 要么, driver.find_element_by_name('s_image').click() 要么, driver.find_element_by_class_name('s_image').click() 但是,我似乎总是以结尾NoSuchElementException,例如: selenium.common.exceptions.NoSuchElementException: Message: u'Unable to locate element: {"method":"name","selector":"s_image"}' …

1
如何使用Python Selenium在文本框(输入)中定位和插入值?
我具有以下HTML结构,并且尝试使用Selenium输入值NUM: <div class="MY_HEADING_A"> <div class="TitleA">My title</div> <div class="Foobar"></div> <div class="PageFrame" area="W"> <span class="PageText">PAGE <input id="a1" type="txt" NUM="" /> of <span id="MAX"></span> </span> </div> 这是我编写的代码: head = driver.find_element_by_class_name("MY_HEADING_A") frame_elem = head.find_element_by_class_name("PageText") # Following is a pseudo code. # Basically I need to enter a value of 1, 2, 3 etc in …

9
Python依赖注入的方式是什么?
介绍 对于Java,依赖注入作为纯OOP工作,即,您提供要实现的接口,并且在框架代码中接受实现已定义接口的类的实例。 现在,对于Python,您可以以相同的方式进行操作,但是对于Python,我认为该方法的开销太大。那么,您将如何以Pythonic的方式实现它呢? 用例 说这是框架代码: class FrameworkClass(): def __init__(self, ...): ... def do_the_job(self, ...): # some stuff # depending on some external function 基本方法 最幼稚(也许是最好的?)方法是要求将外部函数提供给FrameworkClass构造函数,然后从do_the_job方法中。 框架代码: class FrameworkClass(): def __init__(self, func): self.func = func def do_the_job(self, ...): # some stuff self.func(...) 客户代码: def my_func(): # my implementation framework_instance = FrameworkClass(my_func) …

21
请求(由SSLError引起(“由于SSL模块不可用,无法连接到HTTPS URL。”)PyCharm请求网站中的错误
通过Pycharm在Python3 Windows中使用请求,并收到SSL模块不可用错误 我花了几个小时试图弄清楚是什么原因造成的。我已经重新安装了Anaconda,并且完全卡住了。运行以下内容时 def Earlybird(daycount): url = 'https://msft.com' response = requests.get(url) print(response) Earlybird() 我收到错误 requests.exceptions.SSLError: HTTPSConnectionPool(host='msft.com', port=443): Max retries exceeded with url: / (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.")) 我不知道是什么原因造成的。由于Anaconda是最新安装的软件,因此我认为一切都是最新的,因此我不确定这是否指向错误的SSL吗?我对python有点陌生,因此感谢您的耐心配合。--

12
在Python中使用代理运行Selenium Webdriver
我正在尝试在Python中运行Selenium Webdriver脚本来执行一些基本任务。通过Selenium IDE接口运行机器人时,我可以使机器人运行正常(即:仅使GUI重复我的操作时)。但是,当我将代码导出为Python脚本并尝试从命令行执行时,Firefox浏览器将打开,但无法访问起始URL(错误返回到命令行,程序停止)。无论我尝试访问哪个网站,都在发生这种情况。 我在此处包括了一个非常基本的代码以进行演示。我认为我没有正确包含代码的代理部分,因为返回的错误似乎是由代理生成的。 任何帮助将不胜感激。 以下代码仅用于打开www.google.ie并搜索“硒”一词。对我来说,它将打开一个空白的Firefox浏览器并停止。 from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import Select from selenium.common.exceptions import NoSuchElementException import unittest, time, re from selenium.webdriver.common.proxy import * class Testrobot2(unittest.TestCase): def setUp(self): myProxy = "http://149.215.113.110:70" proxy = Proxy({ 'proxyType': ProxyType.MANUAL, 'httpProxy': myProxy, 'ftpProxy': myProxy, 'sslProxy': myProxy, 'noProxy':''}) self.driver …

5
尝试在python中读取文件时处理异常的好方法是什么?
我想在python中读取.csv文件。 我不知道该文件是否存在。 我当前的解决方案如下。我觉得草率,因为两个单独的异常测试并列在一起。 有更漂亮的方法吗? import csv fName = "aFile.csv" try: with open(fName, 'rb') as f: reader = csv.reader(f) for row in reader: pass #do stuff here except IOError: print "Could not read file:", fName

18
如何使用硒处理证书?
我正在使用Selenium启动浏览器。如何处理要求浏览器接受证书的网页(URL)? 在Firefox中,我可能有一个类似的网站要求我接受这样的证书: 在Internet Explorer浏览器上,我可能会得到以下信息: 在谷歌浏览器上: 我重复我的问题:当我启动使用Selenium(Python编程语言)的浏览器(Internet Explorer,Firefox和Google Chrome)时,如何自动接受网站的证书?


3
Docker和Python virtualenv有什么区别?
据我对Docker的了解,它是用于虚拟环境的工具。用他们的术语来说,它叫做“容器化”。这或多或少是Python的virtualenv所做的。但是,您可以在Docker中使用virtualenv 。那么,它是虚拟环境内部的虚拟环境吗?我对这甚至如何工作感到困惑,所以有人可以澄清一下吗?

12
解构绑定字典内容
我正在尝试“分解”字典,并在其键之后将值与变量名称相关联。就像是 params = {'a':1,'b':2} a,b = params.values() 但是由于字典没有排序,因此不能保证params.values()将返回的顺序为(a, b)。有没有很好的方法可以做到这一点?

2
我应该如何使用Optional类型提示?
我试图了解如何使用Optional类型提示。从PEP-484,我知道我可以使用Optional的def test(a: int = None)无论是作为def test(a: Union[int, None])或def test(a: Optional[int])。 但是下面的例子呢? def test(a : dict = None): #print(a) ==> {'a': 1234} #or #print(a) ==> None def test(a : list = None): #print(a) ==> [1,2,3,4, 'a', 'b'] #or #print(a) ==> None 如果Optional[type]似乎与表示相同的意思Union[type, None],我为什么要Optional[]全部使用?

7
读取换行符分隔文件并丢弃换行符的最佳方法?
我正在尝试确定在Python中读取换行符分隔文件时处理换行符的最佳方法。 我想出的是以下代码,包括一次性代码以进行测试。 import os def getfile(filename,results): f = open(filename) filecontents = f.readlines() for line in filecontents: foo = line.strip('\n') results.append(foo) return results blahblah = [] getfile('/tmp/foo',blahblah) for x in blahblah: print x 有什么建议吗?
84 python  file  readline 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.