两个python关键字之间是否有任何显着差异continue
,pass
如示例中所示
for element in some_list:
if not element:
pass
Run Code Online (Sandbox Code Playgroud)
和
for element in some_list:
if not element:
continue
Run Code Online (Sandbox Code Playgroud)
我应该知道吗?
让我们假设一个迭代,我们在其中调用一个没有返回值的函数.我认为我的程序应该表现的方式在这个伪代码中解释:
for element in some_list:
foo(element)
def foo(element):
do something
if check is true:
do more (because check was succesful)
else:
return None
do much much more...
Run Code Online (Sandbox Code Playgroud)
如果我在python中实现它,它困扰我,该函数返回一个None
.有没有更好的方法来"退出函数,没有返回值,如果函数体中的检查失败"?
如果我SHOW GRANTS
在我的mysql数据库中,我得到
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost'
IDENTIFIED BY PASSWORD 'some_characters'
WITH GRANT OPTION
Run Code Online (Sandbox Code Playgroud)
如果我没有弄错,root@localhost
意味着用户root
只能从中访问服务器localhost
.如何告诉MySQL授予root
从其他所有计算机(在同一网络中)访问此mysql服务器的权限?
在阅读numpy时,我遇到了这个功能numpy.histogram()
.
它是什么,它是如何工作的?在文档中他们提到了垃圾箱:它们是什么?
给出3次3 numpy阵列
a = numpy.arange(0,27,3).reshape(3,3)
# array([[ 0, 3, 6],
# [ 9, 12, 15],
# [18, 21, 24]])
Run Code Online (Sandbox Code Playgroud)
为了规范化我想到的二维数组的行
row_sums = a.sum(axis=1) # array([ 9, 36, 63])
new_matrix = numpy.zeros((3,3))
for i, (row, row_sum) in enumerate(zip(a, row_sums)):
new_matrix[i,:] = row / row_sum
Run Code Online (Sandbox Code Playgroud)
必须有更好的方法,不是吗?
也许要澄清:通过归一化我的意思是,每行的总和必须是1.但我认为大多数人都会清楚这一点.
我知道--verbose
或者-v
来自几个工具,我想将它实现到我自己的一些脚本和工具中.
我想放置:
if verbose:
print ...
Run Code Online (Sandbox Code Playgroud)
通过我的源代码,这样如果用户传递-v
选项,变量verbose
将被设置为True
,文本将被打印.
这是正确的方法还是有更常见的方法?
另外:我不是要求一种方法来实现参数的解析.我知道它是如何完成的.我只对verbose选项感兴趣.
我正在使用SQLAlchemy来填充数据库,我经常需要在处理之前检查数据库中是否存在orm对象.这可能是一个非传统的问题,但我发现自己经常遇到这种模式:
my_object = session.query(SomeObject).filter(some_fiter).first()
if my_object: # Mostly in databases...
# Juchee it exists
# process
else:
# It does not exist. :-(
my_object = SomeObject()
# process
Run Code Online (Sandbox Code Playgroud)
我梦想的是:
if my_object = session.query(someObject).blabla.first():
# if my_object is None this scope is left alone
# if my_object is not None I can work with my_object here...
Run Code Online (Sandbox Code Playgroud)
我知道,这种语法是错误的,但我想解释一下,我的意思是这个例子.任何等效的方式都会让我开心.
这种模式有一种优雅的python方法吗?这个问题不仅针对SQLAlchemy,而且针对每个等效场景.
闭上眼睛打"发布你的问题"并等待聪明的人和蟒蛇人用心去追捕我,因为他们可能会说些不合适的东西 ;-)
在python(和其他一些语言)我学到了,类的名称应该用小写字母写,除了第一个字母,它应该是大写字母.例:
class FooBar:
...
Run Code Online (Sandbox Code Playgroud)
类应该放在一个文件中,名称与类相同.在这个例子中,它将是一个文件foobar.py
.如果我想在foo
某处导入该类,我必须这样做:
from foobar import FooBar
Run Code Online (Sandbox Code Playgroud)
这个惯例让我有些困惑.我的直觉告诉我,如果文件名表示一个类,那么它应该用大写的第一个字母写,也就是说FooBar.py
.这在文件名中看起来并不漂亮.也许有人可以告诉我这是什么标准惯例?
我希望我的问题可以理解.:-)
如果我使用MySQLdb通过Python连接到MySQL-Server.我创建了connection
一个cursor
这样的:
connection = MySQLdb.connect(...)
cursor = connection.cursor()
# process
Run Code Online (Sandbox Code Playgroud)
当MySQL处理完成后,应该关闭connection
.现在我想知道:关闭connection
这样做是否足够:
connection.close()
Run Code Online (Sandbox Code Playgroud)
或者我必须关闭第cursor
一个然后关闭connection
?像这样:
cursor.close()
connection.close()
Run Code Online (Sandbox Code Playgroud) 在python而不是php中最接近WordPress的是什么?
WordPress以其简洁而闻名.你下载它,把它扔到你的服务器上,对配置文件进行一些编辑,你就完成了.之后你可以选择一个漂亮的主题并进行一些编辑,并且你的主页(带有博客功能)已准备就绪.
我想知道是否有一个与此相当的python.我在python中更熟练,然后在PHP中,我喜欢你在python中处理事物的方式,然后在PHP中.此外,我几乎没有时间阅读有关复杂的Web框架并需要一些开箱即用的东西.
详情,我想要
你会推荐什么?