小编Phi*_*lip的帖子

河内Python之塔-了解递归

我对Python完全陌生,目前正在阅读有关河内塔和递归的教程。我以为我理解递归,直到他们给出了这个例子:

def moveTower(height,fromPole, toPole, withPole):
    if height >= 1:
        moveTower(height-1,fromPole,withPole,toPole)
        moveDisk(fromPole,toPole)
        moveTower(height-1,withPole,toPole,fromPole)
    #print(withPole)

def moveDisk(fp,tp):
    print("moving disk from",fp,"to",tp)


moveTower(3,"A","B","C")
Run Code Online (Sandbox Code Playgroud)

它用3张光盘打印出解决河内塔问题的正确举动:从A到B的移动磁盘从A到C的移动磁盘从B到C的移动磁盘从A到B的移动磁盘从C到A的移动磁盘从C的移动磁盘到B将磁盘从A移到B

我的问题是,它是怎么做到的?有人可以遍历代码行,以便我了解它如何打印正确的动作吗?我主要是混淆怎样的价值fp,并tp可以从改变ABC。抱歉,这是一个广泛的问题!任何帮助将不胜感激!

python algorithm recursion towers-of-hanoi

5
推荐指数
1
解决办法
2万
查看次数

PYTHON:使用python变量更新MULTIPLE COLUMNS

我正在尝试编写一个有效的mysql语句,它允许我使用作为python变量提供的值更新一个记录中的多个列.

我的陈述如下:

db = MySQLdb.connect(host="localhost", user="user", passwd="password", db="dbname")
cursor = db.cursor()
sql_update = "UPDATE table_name SET field1=%s, field2=%s, field3=%s, field4=%s, field5=%s, field6=%s, field7=%s, field8=%s, field9=%s, field10=%s WHERE id=%s" % (var1, var2, var3, var4, var5, var6, var7, var8, var9, var10, id)
cursor.execute(sql_update)
cursor.close ()
db.commit()
db.close()
Run Code Online (Sandbox Code Playgroud)

在尝试执行查询时,我不断收到SQL语法中存在错误的信息.我找不到它.有人可以指出我的错误或告诉我应该如何写?

python mysql variables

4
推荐指数
1
解决办法
1万
查看次数

如何在SQLAlchemy中创建自定义filter_by

我想创建一个稍微复杂一点的filter_by-这样,如果我传递了一些kwargs和值,其中一些是None,则这些不包含在过滤器中。我不确定如何filter_by全局覆盖。

我真正想要的是:

data = {'is_enabled': True, 'city': 'SF', 'address': None}
query.smart_filter(data)
Run Code Online (Sandbox Code Playgroud)

并且smart_filter排除“地址”字段,并使用“ is_enabled”和“ city”值调用filter_by。

有什么办法可以建立这样的东西吗?

python sqlalchemy

4
推荐指数
1
解决办法
559
查看次数

Flask结构 - 无法从__init__.py导入应用程序

我是python的初学者,__init__.py即使在搜索了几个教程后,我也很难设置应用程序的结构.

目前,我当前的目录结构如下所示

/parent
   /myapp
       __init__.py
       views.py
   /virtualenv
Run Code Online (Sandbox Code Playgroud)

以前,我有(如果它有任何区别)

/parent
   /myapp
   /bin
   /include
   /lib
Run Code Online (Sandbox Code Playgroud)

内容__init__.py如下:

 from flask import Flask
 app = Flask(__name__)
Run Code Online (Sandbox Code Playgroud)

和我的views.py

 from myapp import app
 @app.route('/')
 def test():
    return 'This is a new test'

 if __name__ == '__main__':
    app.run(debug=True)
Run Code Online (Sandbox Code Playgroud)

如果myapp正在使用init文件初始化,为什么我不能将它调用到视图中?我收到一条错误,指出"我无法导入应用程序,而且我没有名为myapp的模块".如果我删除init文件并将内容复制到views.py文件的顶部,一切正常.

python flask

4
推荐指数
1
解决办法
4658
查看次数

为什么我无法从另一个.js文件访问.js文件中定义的JavaScript函数?

我是JavaScript的新手,我正在按照教程试验全局范围.

在本教程中,我有3个文件:

1)index.htm:

<html>
    <head></head>

    <body>
        <h1>HELLO WORLD !!!</h1>

        <script src="app.js"></script>
        <script src="utility.js"></script>

    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

如您所见,我包含2个JavaScript文件.

2)app.js:

var person = 'Torny';   // When I call the logPerson() function this line override the person variable value into the global stack

//console.log(person);

logPerson();
Run Code Online (Sandbox Code Playgroud)

3)utility.js中定义了app.js文件中定义的logPerson()函数:

var person = 'Steve';

function logPerson() {
    console.log(person);
}
Run Code Online (Sandbox Code Playgroud)

好的,所以我期望以下行为:

app.js文件中设置字符串'Tony'作为person变量的值,调用logPerson()函数声明到utility.js文件中,然后在控制台中打印'Tony'.

问题是,当我尝试将index.htm文件打开到FireFox时,我进入FireBug控制台,而不是'Tony'值,我得到了这个错误信息:

ReferenceError: logPerson is not defined
Run Code Online (Sandbox Code Playgroud)

因此,似乎从 …

html javascript

4
推荐指数
1
解决办法
4445
查看次数

在Python中从Excel工作表中查找值

我有一个 Excel 工作表 (data.xlxs),其中包含以下超过 200 行的数据模式。

NS71282379_67698209    123456001
NS71282379_56698765    123456002
NS71282379_67698209    123456003
.
.
.
Run Code Online (Sandbox Code Playgroud)

现在在我的脚本中,我试图找到123456003as的相应值NS71282379_67698209。在我的脚本中,我想将 123456003 替换为 Excel 工作表中的值。我曾经xlrd导入工作表,但没有找到任何方法可以轻松地让我找到相应的值。我怎样才能聪明地做到这一点?

python xlrd lookup-tables

4
推荐指数
1
解决办法
4万
查看次数

MySQL上的布尔类型

我正在寻找一种在SQL中存储布尔数据的方法。我在MySQL中找不到布尔类型。我查看了w3schools(SQL数据类型)上的表,但没有找到布尔类型。

但是我得到了TINYINT(1)用于布尔类型的信息。

是真的,还是还有其他选择?

mysql sql

4
推荐指数
1
解决办法
9615
查看次数

Python:如何使用PyMySQL创建mysql数据库?

我正在使用python 3.6,我PyMySQL用来连接mysql.

我将创建几个数据库.我想编写一个Python脚本来轻松创建和删除它们.

在PyMySQL文档中有一个例子,其中包含一段代码:
PyMySQL docs:https://pymysql.readthedocs.io/en/latest/user/examples.html

connection = pymysql.connect(host='localhost',
                             user='user',
                             password='passwd',
                             db='db',
                             charset='utf8mb4',
                             cursorclass=pymysql.cursors.DictCursor)
Run Code Online (Sandbox Code Playgroud)

在上面的代码中,数据库已经存在.

现在mysql中没有数据库.我想通过python和PyMySQL创建它们.我该怎么办?

python mysql

4
推荐指数
1
解决办法
4940
查看次数

如何在MySQL中删除部分字符串?

在MySQL中,我有一个文本列,其中包含"bla bla bla YYY = 76767 bla bla bla".

我需要减少76767的数量.

我怎么能在SQL中做到这一点?

mysql sql select

3
推荐指数
1
解决办法
1万
查看次数

可以在请求模块中禁用 InsecureRequestWarnings 吗?

这篇文章解释了如何禁用 urllib3 中的警告,但我使用的是session带有请求模块的对象。出现警告是因为verify(ssl) 参数设置为False为了访问页面。

例如

url = "https://www.booking.com/searchresults.en-gb.html"

querystring = {"label":"gen173nr-1DCAEoggJCAlhYSDNiBW5vcmVmcgV1c19vcogBAZgBMbgBB8gBDdgBA-gBAfgBApICAXmoAgM","lang":"en-gb","sid":"5f9b0b3af27a0a0b48017c6c387d8224","track_lsso":"2","sb":"1","src":"searchresults","src_elem":"sb","error_url":"https://www.booking.com/searchresults.en-gb.html?label=gen173nr-1DCAEoggJCAlhYSDNiBW5vcmVmcgV1c19vcogBAZgBMbgBB8gBDdgBA-gBAfgBApICAXmoAgM;sid=5f9b0b3af27a0a0b48017c6c387d8224;class_interval=1;dest_id=30;dest_type=country;dtdisc=0;group_adults=1;group_children=0;inac=0;index_postcard=0;label_click=undef;mih=0;no_rooms=1;offset=0;postcard=0;raw_dest_type=country;room1=A;sb_price_type=total;src=searchresults;src_elem=sb;ss=" + country + ";ss_all=0;ssb=empty;sshis=0;ssne=" + country + ";ssne_untouched=" + country + "&;","ss":country,"ssne":country,"ssne_untouched":country,"dest_id":"30","dest_type":"country","checkin_monthday":"","checkin_month":"","checkin_year":"","checkout_monthday":"","checkout_month":"","checkout_year":"","room1":"A","no_rooms":"1","group_adults":"1","group_children":"0"}

headers = {
        'upgrade-insecure-requests': "1",
        'user-agent': "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36",
        'accept': "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",
        'referer': "https://www.booking.com/searchresults.en-gb.html?label=gen173nr-1DCAEoggJCAlhYSDNiBW5vcmVmcgV1c19vcogBAZgBMbgBB8gBDdgBA-gBAfgBApICAXmoAgM&lang=en-gb&sid=5f9b0b3af27a0a0b48017c6c387d8224&track_lsso=2&sb=1&src=searchresults&src_elem=sb&error_url=https%3A%2F%2Fwww.booking.com%2Fsearchresults.en-gb.html%3Flabel%3Dgen173nr-1DCAEoggJCAlhYSDNiBW5vcmVmcgV1c19vcogBAZgBMbgBB8gBDdgBA-gBAfgBApICAXmoAgM%3Bsid%3D5f9b0b3af27a0a0b48017c6c387d8224%3Bclass_interval%3D1%3Bdest_id%3D30%3Bdest_type%3Dcountry%3Bgroup_adults%3D1%3Bgroup_children%3D0%3Blabel_click%3Dundef%3Bmih%3D0%3Bno_rooms%3D1%3Boffset%3D0%3Braw_dest_type%3Dcountry%3Broom1%3DA%3Bsb_price_type%3Dtotal%3Bsrc%3Dsearchresults%3Bsrc_elem%3Dsb%3Bss%3D" + country + "%3Bssb%3Dempty%3Bssne%3D" + country + "%3Bssne_untouched%3D" + country + "%26%3B&ss=" + country + "&ssne=" + country + "&ssne_untouched=" + country + "&dest_id=30&dest_type=country&checkin_monthday=&checkin_month=&checkin_year=&checkout_monthday=&checkout_month=&checkout_year=&room1=A&no_rooms=1&group_adults=1&group_children=0",
        'content-Encoding': "br",
        'accept-language': …
Run Code Online (Sandbox Code Playgroud)

python ssl warnings python-requests

3
推荐指数
1
解决办法
4541
查看次数