对于((1 2) (3 4) (5 6)),您可以使用loop for (a b) in '((1 2) (3 4) (5 6))每次获得a = 1,b = 2.
但是'(1 2 3 4),我试着loop for x on '(1 2 3 4) by #'cddr for a = (car x) for b = (cadr x)得到a = 1,b = 2.
有没有更好的方法来做这样的事情?
我在模型上有一个如下所示的IntegerField:
amount = models.IntegerField()
Run Code Online (Sandbox Code Playgroud)
访问它时,它有时会返回一个字符串.造成这种情况的最直接原因是它已经为其分配了一个字符串.到目前为止,如此愚蠢.它甚至在保存后也会返回一个字符串.
这让我感到有些惊讶:如果IntegerField在赋值时将其值强制转换为整数(或者,最迟在保存时),那将是很好的,因此用户可以依赖它作为整数.
(我的应用程序使用sqlite.)
有没有办法让IntegerField只返回整数?或者我是否必须创建自定义字段才能执行此操作?
我用Python编写程序,我需要根据用户的语言环境输出日期:
有没有办法从县/时区获取区域设置或需要遵循一些其他方法?
或者我是否需要从用户自己获取区域设置?
编辑
该计划将成为一个网络应用程序.用户可以向我提供他的国家.但是,他是否必须明确地向我提供该地区,或者我可以从他的时区/国家获得它吗?
我正在寻找创建一个简单的暴力密码破解程序,它将从stdin中散列输入并将结果与现有散列(我的证券类)进行比较.
我从来没有做过任何涉及哈希的实际编程,因为到目前为止它主要是概念/数学部分.是否有一种(相对)易于学习的语言,它具有简单的哈希命令?我的一个朋友推荐Python,但我不确定是否还有其他任何东西我可以在一两天内拿到.我知道一点C,但哈希似乎相对复杂,需要额外的库.
此外,任何语法帮助实际哈希命令将不胜感激.程序本身需要能够支持奇数哈希方法,例如两次散列值或使用不更改的set salt,并且能够从stdin获取输入(用于johntheripper等程序).
我试图理解Python*args和**kwargs操作.让我们考虑一个带有4个参数的函数.我们可以使用*x将list x作为参数传递给函数
def foo(a,b,c,d):
print a,b,c,d
x=[1,2,3,4]
foo(x)
#TypeError: foo() takes exactly 4 arguments (1 given)
foo(*x)
#1 2 3 4 # works fine
print "%d %d %d %d" %(*x)
#SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
如果我弄错了,以防foo()*x解包值...那么为什么错误print "%d %d %d %d" %(*x)?
注意 - 我对如何在一行中打印列表感兴趣,但只是好奇为什么print "%d %d %d %d" %(*x)不起作用.
我正在通过在线教程学习Python.我的问题是,当我运行脚本时,无论我输入什么响应,我得到的是if go =="kitchen"......
def go_to():
go = raw_input("Go to? ")
if go == Kitchen or breakfast:
print "You rumble down stairs and into the kitchen. Your mom has left some microwaved waffles on the table for you. Your big boy step sits by the counter."
elif go == "back to bed" or "back to sleep" or bed or sleep:
print "You hit snooze and roll over."
elif go == "bathroom" or "toilet" or "potty" or "pee" or "poop" or "take …Run Code Online (Sandbox Code Playgroud) 我正在实施greenlet API.
from greenlet import greenlet
def test1():
print 12
gr2.switch()
print 34
def test2():
print 56
gr1.switch()
print 78
gr1 = greenlet(test1)
gr2 = greenlet(test2)
gr1.switch()
Run Code Online (Sandbox Code Playgroud)
这是我凌乱的代码
def test1():
tmp1=yield
print 12
try:
gv2.send(1)
except StopIteration:
pass
tmp1=yield
print 34
def test2():
tmp2=yield
print 56
try:
gv2.send(1)
except StopIteration:
pass
tmp1=yield
print 78
gv1=test1()
gv1.next()
gv2=test2()
gv2.next()
gv1.send(1)
Run Code Online (Sandbox Code Playgroud)
可见,
12
56
Traceback (most recent call last):
File "prog.py", line 26, in <module>
gv1.send(1)
File "prog.py", line 5, in test1 …Run Code Online (Sandbox Code Playgroud) 所以我正在开发一个基本的文字游戏,你用它来处理一个字母的"手"(字典对象),用来创建单词并获得积分.
这个"手"用于许多功能的参数:计算玩家的分数,在玩家使用一个或多个字母后更新手中的字母数,显示手,检查玩家单词的有效性,等等
从我读过的所有内容中,我知道如果可以的话我应该避免使用全局变量(尽管我还不完全确定原因).
那么我可以将其他一般方法用于许多使用"hand"作为参数的函数?
我正在用这个简单的代码创建一个字典:
pixel_histogram = {}
min_value = -0.2
max_value = 0.2
interval_size = (math.fabs(min_value) + math.fabs(max_value))/bins
for i in range(bins):
key = min_value+(i*interval_size)
print key
pixel_histogram[key] = 0
print pixel_histogram
Run Code Online (Sandbox Code Playgroud)
但我有点惊讶,因为我的印刷品得到了这些值:
#Printing keys
-0.2
-0.16
-0.12
-0.08
-0.04
0.0
0.04
0.08
0.12
0.16
#Printing the dictionary
{0.0: 0,
-0.08000000000000002: 0,
0.15999999999999998: 0,
-0.16: 0,
0.12: 0,
-0.12000000000000001: 0,
0.08000000000000002: 0,
-0.04000000000000001: 0,
-0.2: 0,
0.03999999999999998: 0}
Run Code Online (Sandbox Code Playgroud)
我没弄清楚为什么值不同,我怎么能解决这个问题.任何帮助,将不胜感激.谢谢.
我在可以传递参数但不能使用普通命令行设置环境变量的环境中运行。
我还是要设置环境变量。是否有另一种方法可以“愚弄” java设置环境变量,例如使用-D参数?
(我正在通过色调在oozie中运行火花;所有这些都在Cloudera堆栈中)。
python ×8
common-lisp ×1
coroutine ×1
dictionary ×1
django ×1
django-orm ×1
hash ×1
java ×1
key ×1
lisp ×1
locale ×1
numbers ×1
oop ×1
python-2.7 ×1
security ×1
syntax ×1
timezone ×1