我在Python 3.3中有一个try-except块,我希望它能无限期地运行.
try:
imp = int(input("Importance:\n\t1: High\n\t2: Normal\n\t3: Low"))
except ValueError:
imp = int(input("Please enter a number between 1 and 3:\n> ")
Run Code Online (Sandbox Code Playgroud)
目前,如果用户输入非整数,它将按计划工作,但是如果他们再次输入它,它将再次引发ValueError并崩溃.
解决这个问题的最佳方法是什么?
我需要检测一下代码点是否是Elixir中的大写字母.我已经尝试检查它的值是否在范围内65..90但是在非拉丁大写字母上失败.我也试过检查是否
String.upcase(cp) == cp
但是这对非字母(即数字,标点符号)失败了.
我真的不想通过整个unicode并创建一个大写代码点列表,是否有内置函数?
我正在尝试为brainfuck实现一个解释器,截至目前,我只是使用一系列if/elif语句.
if(i == ">"):
...
elif(i == "<"):
...
elif(i == "+"):
...
elif(i == "-"):
...
Run Code Online (Sandbox Code Playgroud)
然而,这对我来说似乎非常笨拙和不py.是否有更好的(更清洁/更快/更美观)的方式来实现这个?
我想知道你是否可以针对列表中的所有数字检查一个数字,例如:
if n % mylist == 0:
print "Not Prime"
Run Code Online (Sandbox Code Playgroud)
如果你想知道,这是这个问题的延续,我希望没有关于问题频率的规则......:/
我正在编写我的第一个GUI应用程序来查找公司的产品.
from Tkinter import *
import tkMessageBox
def debug():
buttonText = relStatus.get()
tkMessageBox.showinfo("You Clicked ", buttonText)
return
app = Tk()
app.title("Ironcraft Product Finder")
app.geometry("700x500")
labelText = StringVar()
labelText.set("Choose an Appliance Type")
topLabel = Label(app, textvariable = labelText, height = 5).pack()
fire = Button(app, text="Fire", width=20, command=debug)
fire.pack(padx=10)
relStatus = StringVar()
relStatus.set(fire.text)
app.mainloop()
Run Code Online (Sandbox Code Playgroud)
当我运行它时,它会出现错误消息:
AttributeError: Button instance has no attribute 'text'
Run Code Online (Sandbox Code Playgroud)
但在创造'火'时它说
text="fire"
Run Code Online (Sandbox Code Playgroud)
这不是属性吗?
我有一个导航框,尽管浮动设置为正确,但"接触"元素并非完全右对齐.
<div id="navwrapper">
<ul>
<li class="single">Home</li>
<li class="double" id="left">About</li>
<li class="double" id="right">Contact</li>
<li class="single">Book</li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
和CSS
#right {
float:right;
}
Run Code Online (Sandbox Code Playgroud)
其他问题似乎建议将左右元素交换以获得所需效果,但这不起作用.
我正在对Euler项目进行挑战,以提高python的水平(我是一个初学者),并且正在尝试做问题9。
vara = lista[-1]
varb = listb[-1]
varc = listc[-1]
while not(vara < varb < varc):
listb.pop(-1)
lista.pop(-1)
lista.pop(-1)
if ((vara * vara) + (varb * varb) == varc * varc):
print vara, varb, varc
else:
listc.pop(-1)
if ((vara * vara) + (varb * varb) == varc * varc):
print vara, varb, varc
else:
listb.pop(-1)
if ((vara * vara) + (varb * varb) == varc * varc):
print vara, varb, varc
else:
lista.pop(-1)
Run Code Online (Sandbox Code Playgroud)
我尝试了很多方法来使lista / listb / listc的值在1-1000之间,但是它们似乎都不起作用 …
此代码将成为程序的一部分,该程序将检查数字是否为素数.我知道它不是特别优雅,但我想让它只是为了体验而工作.我认为函数失败了,因为if/elif上的逻辑是错误的,当我运行这段代码时,它似乎只是直接进入else子句.这是一个语法问题,还是我不允许在if子句中进行逻辑检查?
list = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47]
def find_prime(list, n):
if n in list == False:
list.append(n)
print "I'ts in there now."
elif n in list == True:
print "It's in there already."
else:
print "Error"
find_prime(list, 3)
find_prime(list, 51)
Run Code Online (Sandbox Code Playgroud) 我写了一个非常基本的加密程序,在为它编写解密算法时,我遇到了一些循环问题.
from re import *
cipher = open('cipher.txt')
ciphertext = cipher.read()
keyfile = open('key.txt')
key = keyfile.read()
decoded = []
chardec = ''
inval = 1
print("Decoder for encrypt1.py")
while inval == 1:
useManKey = input("Use a manual key? Y or N\n> ")
if useManKey == 'Y' or 'y':
key = input("Please enter the key you wish to use to decrypt\n> ")
inval = 0
elif useManKey == 'N' or 'n':
inval = 0
print("OK, decrypting")
else:
print("That wasn't a …Run Code Online (Sandbox Code Playgroud) 在Boa Constructor的安装屏幕上,它说在注册表中找到了Python 2.2和3.1,但是我使用2.7作为我的主要版本.我怎样才能让它识别出来?
python ×8
python-2.7 ×3
list ×2
python-3.x ×2
brainfuck ×1
css ×1
css-float ×1
elixir ×1
html ×1
if-statement ×1
install ×1
oop ×1
tkinter ×1
web ×1