精华内容
下载资源
问答
  • I had a question regarding the usage of variables inside a python function which accesses the PostgreSQL server. For example, the following:def delete():cur.execute("""DELETE FROM potluckWHERE name = ...

    I had a question regarding the usage of variables inside a python function which accesses the PostgreSQL server. For example, the following:

    def delete():

    cur.execute(

    """DELETE FROM potluck

    WHERE name = var_1;"""

    However, If I wanted the update function to take in variables for var_1, how would I do so?

    For example, I want my function to be in the form:

    def delete(var_1):

    cur.execute(

    """DELETE FROM potluck

    WHERE name = %s;""", (var_1))

    However, just typing that didn't work.

    In addition, how about in the case when:

    def delete(name, var_1):

    cur.execute(

    """DELETE FROM potluck

    WHERE %s = %s;""", (name, var_1))

    where I don't want "name" to have quotation marks when it is inserted into the string?

    Any help would be appreciated!

    解决方案

    SOLVED:

    I see what I was doing wrong. The only change I needed to make was add a comma after var_1, since:

    "For positional variables binding, the second argument must always be a sequence, even if it contains a single variable. And remember that Python requires a comma to create a single element tuple".

    For example:

    def delete(var_1):

    cur.execute(

    """DELETE FROM potluck

    WHERE name = %s;""", (var_1,))

    This works. I got the info from:

    In the second case, then please reference the other answer below, which uses AsIs. That works. For example:

    def delete(name, var_1):

    cur.execute(

    """DELETE FROM potluck

    WHERE %s = %s;""", (AsIs(name), var_1))

    That does the trick. Thanks!

    展开全文
  • python execute()函数

    2021-02-02 15:25:04
    cursor.execute("select * from %s where name='三星';", args=s) print(cursor.fetchall()) 报错,每次s传进去,good就变 'good',请问怎么处理 <p>pymysql.err....
  • python中help函数_Python help()函数

    千次阅读 2020-07-11 04:54:52
    python中help函数Python help() function is used to get the documentation of specified module, class, function, variables etc. This method is generally used with python interpreter console to get ...

    python中help函数

    Python help() function is used to get the documentation of specified module, class, function, variables etc. This method is generally used with python interpreter console to get details about python objects.

    Python help()函数用于获取指定模块,类,函数,变量等的文档。此方法通常与python解释器控制台一起使用,以获取有关python对象的详细信息。

    Python help()函数 (Python help() function)

    Python help() function syntax is:

    Python help()函数语法为:

    help([object])

    If no argument is given, the interactive help system starts on the interpreter console.

    如果未提供任何参数,则交互式帮助系统将在解释器控制台上启动。

    In python help console, we can specify module, class, function names to get their help documentation. Some of them are:

    在python帮助控制台中,我们可以指定moduleclassfunction名称来获取其帮助文档。 他们之中有一些是:

    help> True
    
    help> collections
    
    help> builtins
    
    help> modules
    
    help> keywords
    
    help> symbols
    
    help> topics
    
    help> LOOPING

    If you want to get out of help console, type quit.

    如果要退出帮助控制台,请输入quit

    We can also get the help documentation directly from the python console by passing a parameter to help() function.

    通过将参数传递给help()函数,我们还可以直接从python控制台获取帮助文档。

    >>> help('collections')
    
    >>> help(print)
    
    >>> help(globals)

    Let’s see what is the output of help() function for globals() function.

    让我们看看globals()函数的help()函数的输出是什么。

    >>> help('builtins.globals')
    
    Help on built-in function globals in builtins:
    
    builtins.globals = globals()
        Return the dictionary containing the current scope's global variables.
        
        NOTE: Updates to this dictionary *will* affect name lookups in the current global scope and vice-versa.

    定义自定义类和函数的help() (Defining help() for custom class and functions)

    We can define help() function output for our custom classes and functions by defining docstring (documentation string). By default, the first comment string in the body of a method is used as its docstring. It’s surrounded by three double quotes.

    我们可以通过定义docstring(文档字符串)来为自定义类和函数定义help()函数输出。 默认情况下,方法主体中的第一个注释字符串用作其文档字符串。 它用三个双引号引起来。

    Let’s say we have a python file python_help_examples.py with following code.

    假设我们有一个包含以下代码的python文件python_help_examples.py

    def add(x, y):
        """
        This function adds the given integer arguments
        :param x: integer
        :param y: integer
        :return: integer
        """
        return x + y
    
    
    class Employee:
        """
        Employee class, mapped to "employee" table in Database
        """
        id = 0
        name = ''
    
        def __init__(self, i, n):
            """
            Employee object constructor
            :param i: integer, must be positive
            :param n: string
            """
            self.id = i
            self.name = n

    Notice that we have defined docstring for function, class and its methods. You should follow some format for documentation, I have generated some part of them automatically using PyCharm IDE. NumPy docstring guide is a good place to get some idea around proper way of help documentation.

    注意,我们已经为函数,类及其方法定义了docstring。 您应该遵循某种格式的文档,我已经使用PyCharm IDE自动生成了其中的一部分。 NumPy文档字符串指南是了解正确的帮助文档方式的好地方。

    Let’s see how to get this docstring as help documentation in python console.

    让我们看看如何在python控制台中获取此文档字符串作为帮助文档。

    First of all, we will have to execute this script in the console to load our function and class definition. We can do this using exec() command.

    首先,我们将必须在控制台中执行此脚本以加载函数和类定义。 我们可以使用exec()命令执行此操作。

    >>> exec(open("python_help_examples.py").read())

    We can verify that the functions and class definitions are present using globals() command.

    我们可以使用globals()命令验证函数和类定义是否存在。

    >>> globals()
    {'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, '__warningregistry__': {'version': 0}, 'add': <function add at 0x100dda1e0>, 'Employee': <class '__main__.Employee'>}

    Notice that ‘Employee’ and ‘add’ are present in the global scope dictionary.

    请注意,全局范围字典中存在“雇员”和“添加”。

    Now we can get the help documentation using help() function. Let’s look at some of the examples.

    现在,我们可以使用help()函数获取帮助文档。 让我们看一些例子。

    >>> help('python_help_examples')
    >>> help('python_help_examples.add')
    
    Help on function add in python_help_examples:
    
    python_help_examples.add = add(x, y)
        This function adds the given integer arguments
        :param x: integer
        :param y: integer
        :return: integer
    (END)
    >>> help('python_help_examples.Employee')
    >>> help('python_help_examples.Employee.__init__')
    
    
    Help on function __init__ in python_help_examples.Employee:
    
    python_help_examples.Employee.__init__ = __init__(self, i, n)
        Employee object constructor
        :param i: integer, must be positive
        :param n: string
    (END)

    摘要 (Summary)

    Python help() function is very helpful to get the details about modules, classes, and functions. It’s always best practice to define docstring for the custom classes and functions to explain their usage.

    Python help()函数对于获取有关模块,类和函数的详细信息非常有帮助。 为自定义类和函数定义docstring始终是最佳实践,以解释其用法。

    GitHub Repository.GitHub存储库中检出完整的python脚本和更多Python示例。

    Reference: Official Documentation

    参考: 官方文档

    翻译自: https://www.journaldev.com/22892/python-help-function

    python中help函数

    展开全文
  • 以下代码在Python2和给出了不同的输出Python3:from sys import versionprint(version)def execute(a, st):b = 42exec("b = {}\nprint('b:', b)".format(st))print(b)a = 1.execute(a, "1.E6*a")Python2 印刷品:...

    以下代码在Python2和中给出了不同的输出Python3:

    from sys import version

    print(version)

    def execute(a, st):

    b = 42

    exec("b = {}\nprint('b:', b)".format(st))

    print(b)

    a = 1.

    execute(a, "1.E6*a")

    Python2 印刷品:

    2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)]

    ('b:', 1000000.0)

    1000000.0

    Python3 印刷品:

    3.2.3 (default, Apr 11 2012, 07:15:24) [MSC v.1500 32 bit (Intel)]

    b: 1000000.0

    42

    为什么不Python2将函数b内部的变量绑定到execute函数字符串中的exec值,而Python3却不这样做呢?如何实现Python2in 的行为Python3?我已经尝试过通过字典让全局变量和本地变量在中exec起作用Python3,但到目前为止没有任何效果。

    -编辑-

    在阅读Martijns的答案之后,我用进行了进一步分析Python3。在下面的例子中,我给了locals()百科作为d到exec,但d['b']打印的东西不仅仅是打印别的b。

    from sys import version

    print(version)

    def execute(a, st):

    b = 42

    d = locals()

    exec("b = {}\nprint('b:', b)".format(st), globals(), d)

    print(b) # This prints 42

    print(d['b']) # This prints 1000000.0

    print(id(d) == id(locals())) # This prints True

    a = 1.

    execute(a, "1.E6*a")

    3.2.3 (default, Apr 11 2012, 07:15:24) [MSC v.1500 32 bit (Intel)]

    b: 1000000.0

    42

    1000000.0

    True

    id的比较d和locals()显示,它们是相同的对象。但在这些条件下b应与相同d['b']。我的例子有什么问题?

    展开全文
  • Python中函数、装饰器

    千次阅读 2015-01-06 16:17:01
    map()函数接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。 >>> s = ['AASDa', 'dendY']>>> def formatStr(ss): return ss[0].upper() + ss[1:...
    • map()函数接收两个参数,一个是函数,一个是序列,map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。
    >>> s = ['AASDa', 'dendY']
    >>> def formatStr(ss):
    return ss[0].upper() + ss[1:len(ss)].lower()
     
    >>> v = formatStr('aaaB')
    >>> v
    'Aaab'
    >>> map(formatStr, s)
    <map object at 0x000000000320A668>
    >>> for v in map(formatStr, s):
    print(v)
     
    Aasda
    Dendy

    • reduce把一个函数作用在一个序列[x1, x2, x3...]上,这个函数必须接收两个参数,reduce把结果继续和序列的下一个元素做累积计算,其效果就是:

    reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4)
    >>> L = [2, 3, 4]
    >>> def prod(a, b):
    return a * b
    >>>
    >>> from functools import *
    >>> reduce(prod, L)
    24
    >>>
    • filter函数,方法同map,目的是过滤list中符合条件的元素:
    >>> s = [1, 2, -3, -5]
    >>> def notLt0(x):
    return x >= 0
     
    >>> filter(notLt0, s)
    <filter object at 0x000000000320A940>
    >>> for v in filter(notLt0, s):
    print(v)
     
    1
    2
    >>>
    如上的示例,定义一个notLt0的方法,该方法用于判断元素是否大于等于0,是则返回True,否则返回False。而filter则会将列表s的每一个元素作为参数调用notLt0方法,最后将所有返回True的元素重新组装成一个list返回。
    • 匿名函数:无须定义函数的名称,格式如下:
    fn = lambda 函数参数列表: 函数体
    其中fn为返回的匿名函数,例如:
    '''
    匿名函数
    '''
    f = lambda x : x * x
    print(f(2))
    • 函数的闭包,类似javascript的闭包,即外部函数返回内部函数的引用,内部函数可能持有外部函数变量的引用,例如:
    '''
    闭包
    '''
    def count():
    fs = []
    for i in range(1, 4):
    def f():
    print(i)
    return i * i
    fs.append(f)
    return fs
     
    f1, f2, f3 = count()
    print('before execute...')
    print(f1()) # 输出:9
    print(f2()) # 输出:9
    print(f3()) # 输出:9
    print('after execute...')
    由于每次执行fn()时,i的值都变为了3,所以输出的结果并非预期的1,4,9,解决这种问题有多种方式,可以再定义一层闭包,也可以将fs中的元素修改为f函数的执行结果,而不是函数引用。
    • 装饰器(decorator),包装目标函数,在不改变原目标函数的情况下,对其进行包装,实现更多的功能。
        例如:实现一个打印日志的装饰器:
    '''
    装饰器
    '''
    # 定义一个装饰器(decorator)
    def log(fn):
    def wrapper(*args, **kw):
    print('call : %s' % (fn.__name__))
    return fn(*args, **kw)
    return wrapper
     
    @log
    def func():
    print ('hello!')
     
    func()
    其中,log函数为一个装饰器,除了完成fn函数本身的功能外,还添加了打印日志的功能,log函数返回一个装饰函数wrapper,打印的结果:
    call : func
    hello!
    Python中使用@符号来表示装饰器(不是java的注解,形式类似),在执行func函数时,解释器看到@符号标识,会先执行log方法,并将func函数作为参数,此时func函数依然存在,但是同名的func变量会指向wrapper函数:
    print(func.__name__)
    输出wrapper,同:
    func = wrapper(*args, **kw):
    print('call : %s' % (fn.__name__))
    return fn(*args, **kw)
    所以,执行func()函数其实执行的是wrapper函数。

    上边为最简单的装饰器,如果我们要实现可自定义参数的装饰器呢?
    # 自定义文本的装饰器
    def log(text):
    def decorator(fn):
    def wrapper(*args, **kw):
    print('log : %s, function name : %s. ' % (text, fn.__name__))
    fn(*args, **kw)
    return wrapper
    return decorator
     
    @log('this is a log text.')
    def func():
    print ('hello!')
     
    func()
    print(func.__name__) # 输出:wrapper
    如上,我们需要再定义一个函数decorator来接收我们定义的参数信息,除了上边的执行过程外,在调用func函数时,解释器会先执行log和decorator函数,最后在执行wrapper函数,形式如下:
    func = log(自定义参数)(func)
    • 偏函数,functools.partial,固定函数参数,形成新的函数:
    如果我们需要在转换为int的时候确定进制,Python提供了int方法:
    int(x, base = 10)
    base为此时x的进制数,默认为10,我们写一个将二进制字符串转换为int的方法:
    def int2(x):
    return int(x, base = 2)
    s = int2('110')
    print (s) # 输出6
    但是,其实Python已经为我们做了这样的事情,那就是利用functools.partial的方法:
    int2 = functools.partial(int, base = 2)
    s = int2('110')
    print (s) # 输出6
    当然,该函数用法有很多,例如将max函数默认与一些元素比较:
    max2 = functools.partial(max, 10, 20, 30)
    s = max2(1, 2, 3, 40)
    print(s) # 输出:40
    s = max2(1, 2, 3)
    print(s) # 输出:30
    这样,max函数在比较的元素中,默认会加入10,20,30了。





    展开全文
  • python3eval函数用法简介

    万次阅读 多人点赞 2016-12-03 10:50:13
    python中eval函数的用法十分的灵活,这里主要介绍一下它的原理和一些使用的场合。 下面是从python的官方文档的解释:  The arguments are a string and optional globals and locals. If provided, globals...
  • 一篇文章搞懂Python中函数式编程

    万次阅读 多人点赞 2017-12-03 15:11:59
    全部看了一遍,写的还不错nice,正好复习复习Python的应用,最近手生了。感谢博主的好文章原文链接:原文 ...高阶函数 ...1. 变量可以指向函数 ...2. 传入函数 ...返回函数 ...函数Python内建支持的一种封
  • python 函数中定义函数

    千次阅读 2018-02-02 16:02:23
    一直不明白这样写具体有什么意义。直到我准备实现一个类似与 java 中的 Timer#schedule...而要实现这种重复定时器,似乎需要使用 “函数中定义函数的”的方式才可以。 def scheduler_build(delay, cmd): def b
  • def time_function(f, *args): ... Call a function f with args and return the time (in seconds) that it took to execute. """ import time tic = time.time() f(*args) toc = time.time() return toc - tic
  • 写了一个算法来爬取一个网站的新闻,定义一个类,初始函数 __init__(self)用来连接数据库;函数 main(self)用来爬取数据,其中main()内部再调用conn()和judge()函数,但是程序运行到main()函数调用conn()这一步...
  • python学习——函数式编程——返回函数篇:1:返回函数;2:匿名函数;3:装饰器;4:偏函数
  • python常用系统函数方法与模块

    千次阅读 2018-12-10 21:38:21
    python常用系统函数方法与模块 python基础语法总结(一)-- python类型转换函数+文件读写 python基础语法总结(二)-- 函数function python基础语法总结(三)-- 数与字符串 python基础语法总结(四)-- list...
  • python 调用halcon函数

    千次阅读 2020-01-08 15:04:38
    之前的项目里用到了halcon,而一部分代码是python写的,懒得再转一次,就直接在python里使用halcon的函数了。 用到了pythonnet,它是python与c#的交互模块。 halcon函数(.hdvp): 正常编写 python: import clr ...
  • python学习之滚动页面函数execute_script

    千次阅读 2019-09-02 18:48:48
    python学习之滚动页面函数execute_script 滚动到底部:window.scrollTo(0,document.body.scrollHeight) 滚动到顶部:window.scrollTo(0,0) 说明: window:js的window对象 scrollTo():window的方法,可以滚到...
  • eval函数python_Python eval()函数

    千次阅读 2020-07-05 20:04:52
    eval函数pythonPython eval() function is used to parse an expression string as python expression and then execute it. Python eval()函数用于将表达式字符串解析为python表达式,然后执行它。 Python eval...
  • python 执行execute遇到的问题

    千次阅读 2016-09-01 16:33:00
    1、如下方式去查询无法查询出结果,但直接在数据库查询去查询是能查询到结果的,郁闷,花了很久的时间才知道原来是双引号导致的 把:name="%s" 的%s前后的双引号去掉就对了 2、通过自己写的方法去查询...
  • python之retry函数

    千次阅读 2020-04-16 11:36:14
    这样会影响到抓取的数据量,这个时候retry函数就用到了。 首先安装,很简单pip install retry 然后就是讲一下,retry函数的几个参数的意义,当然如果英文够好的可以直接看源代码就可以官网。 各个参数的含义 ...
  • Python Webdriver常用函数

    千次阅读 2018-12-17 19:01:28
    Python+Selenium+Webdriver常用方法函数新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右...
  • python 调用php 函数

    2019-09-22 20:56:48
    在电子商务的web平台有可能存在这样的需求,在月末进行分红账务结算,这样就需要在web服务器下写脚本定时执行数据库的操作,这里有很多种可选的方案,Python调 用PHP函数只是其中的一种处理方式。 Python端代码...
  •  python调用MySQLdb出现1146错误报错的原因情况很多如linux平台数据库大小写敏感、创建数据表的多余注释等等,可参考其他博客情况,以上案例是一种导致调用MySQLdb报错1146的情形,具体原因待分析,暂且记录备查及...
  • 随机:python中的random函数,具体可以看实现方式random.py存储: 可以存在文件,也可以存在数据库。这里选择了mysql,具体可以看菜鸟教程 http://www.runoob.com/python3/python3-mysql.html#-*- coding:utf-8-*...
  • python 连接 mysql 函数

    2018-11-14 11:34:10
    用于pyhon连接mysql的函数,可传入sql语句、和where等.../usr/bin/python # -*- coding: UTF-8 -*- import MySQLdb def mysql_select(sql,parm): '''这是查询使用的函数''' #global data db = MySQLdb.connect...
  • Pycharm IDE 下查询Python模块和函数的使用方法

    万次阅读 多人点赞 2019-04-27 08:52:33
    3 查询opencv库下模块的函数使用方法 小结 参考资料 子曰:工欲善其事,必先利其器”,在用Python时候,一般都是 Anaconda + Pycharm 搭配使用。而在许多教程都推荐使用Anaconda和Pycharm,这到底是什么? 在...
  • Python实现窗口函数

    2020-11-02 15:13:51
    计算每只股票持仓前五的用户信息 SQL实现 select * from ( select sec_code,acct_id,hold_vol,hold_amt,DENSE_RANK() OVER(partition by sec_code order...#Python实现 def query_sql(sql): conn = psycopg2.connect
  • lambda:Python的匿名函数

    万次阅读 2017-03-28 22:18:33
    参考 lambda函数也叫匿名函数,即,函数没有具体...Python中使用lambda的话,写成这样g = lambda x : x**2 print g(4) lambda表达式在很多编程语言都有对应的实现。比如C#:var g = x => x**2 Console.WriteLine(g(4))
  • Python中调用C++函数

    2011-11-27 01:04:38
    因此在python脚本调用c/c++的库,对python进行扩展,是很有必要的。使用python api,http://www.python.org/doc/ ,需要安装python-dev。 test.cpp文件如下   #include //包含python的头文件 #include #...
  • Python 装饰器 函数

    千次阅读 2016-04-11 22:01:17
    Python装饰器学习(九步入门):http://www.cnblogs.com/rhcad/archive/2011/12/21/2295507.html 浅谈Python装饰器:https://blog.csdn.net/mdl13412/article/details/22608283 Python装饰器与面向切面编程:...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 40,466
精华内容 16,186
关键字:

python中execute函数

python 订阅