当我在Python中运行以下代码 - 3.3:
import urllib
tempfile = urllib.request.urlopen("http://yahoo.com")
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
我这样做也是为了验证:
我究竟做错了什么?提前致谢!
我可以在我的程序中执行以下操作以获得一个简单的打开文件对话框并打印所选的文件路径.不幸的是,当用户选择文件时,它不会马上消失,并且会停留超过5分钟. 在执行更多python代码之前,如何在选择之后立即使窗口消失?在Tkinter代码之后,我尝试使用OpenCV导入一些视频,我认为这可能会导致速度变慢.我的OpenCV代码确实正确执行,我不认为单独存在问题(即某些交互导致错误并且可能在Tkinter包装其GUI对话框之前启动了一些密集的进程).
import Tkinter as Tk
import cv2
from tkFileDialog import askopenfilename
root = Tk.Tk()
root.withdraw() # we don't want a full GUI, so keep the root window from appearing
filename = askopenfilename() # show an "Open" dialog box and return the path to the selected file
print(filename)
cap = cv2.VideoCapture('video.mp4') # this works just fine
Run Code Online (Sandbox Code Playgroud)
如果有用,我使用的是Python 2.7和Mac OS X 10.9.
[编辑:这对所有人来说似乎不是问题,但它适合我,所以我正在改变问题,也包括调试问题.在Tkinter打开文件对话框窗口关闭GUI之前,我不希望执行任何操作.似乎我的程序中的后续步骤(一个开放的简历视频导入)可能以某种方式导致Tkinter减慢速度,所以我想确保它在任何新进程启动之前关闭.再次,Tkinter窗口确实在5分钟后关闭...]
我试图按照Continuum Analytics博客上的一个例子来对Python,Cython,Numba进行基准测试,以获得使用for循环计算的总和.不幸的是,我发现Cython比Python慢!
这是我的Python函数定义:
def python_sum(y):
N = len(y)
x = y[0]
for i in xrange(1,N):
x += y[i]
return x
Run Code Online (Sandbox Code Playgroud)
现在我的Cython功能:
def cython_sum(int[:] y):
cdef int N = y.shape[0]
cdef int x = y[0]
cdef int i
for i in xrange(1,N):
x += y[i]
return x
Run Code Online (Sandbox Code Playgroud)
现在我有一个脚本可以提取两个函数和基准:
import timeit
import numpy as np
import cython_sum
import python_sum
b = np.ones(10000)
timer = timeit.Timer(stmt='python_sum.python_sum(b)', setup='from __main__ import python_sum, b')
print "Python Sum (ms): %g" % (timer.timeit(1)*1000)
timer = timeit.Timer(stmt='cython_sum.cython_sum(b)', …
Run Code Online (Sandbox Code Playgroud) 我一直在尝试解决这个程序,它接受两个字符串作为输入并输出常用字母数.例如,如果输入是"common"和"connor",则输出应为4(1 c,1 n和2 o).我使用set()函数但输出3(它将两个o视为单个公共信件 ).任何帮助将不胜感激.谢谢!
顺便说一下这是我写的代码:
print("Enter number of inputs: ")
c = int(input())
store = []
for each_item in range(c):
print("Enter First String: ")
one = input()
print("Enter Second String")
two = input()
s = len(set(one) & set(two))
store.append(s)
for each_number in store:
print(each_number)
Run Code Online (Sandbox Code Playgroud) 我想 
在空段落标签之间插入。
输入:
1. <div><p></p></div>
2. <div><p style="margin: 0 0 0 0"></p></div>
Run Code Online (Sandbox Code Playgroud)
预期输出:
1. <div><p> </p></div>
2. <div><p style="margin: 0 0 0 0"> </p></div>
Run Code Online (Sandbox Code Playgroud)
我尝试使用前后查看,但显然我不能在这里使用量词: (?<=< p[^>]*>)(?=<\/p>)
有任何想法吗?我可用的工具是正则表达式和 c#
在我的小项目中,我必须确定目录中的文件类型.所以我选择了python-magic
模块并执行了以下操作:
from Tkinter import Tk
from tkFileDialog import askdirectory
def getDirInput():
root = Tk()
root.withdraw()
return askdirectory()
di = getDirInput()
print('Selected Directory: ' + di)
for f in os.listdir(di):
m = magic.Magic(magic_file='magic')
print 'Type of ' + f + ' --> ' + m.from_file(f)
Run Code Online (Sandbox Code Playgroud)
但是python-magic
当我将它传递给from_file()
函数时,似乎无法获取unicode文件名.这是一个示例输出:
Selected Directory: C:/Users/pruthvi/Desktop/vidrec/temp
Type of log.txt --> ASCII English text, with very long lines, with CRLF, CR line terminators
Type of TAEYEON ??_ I (feat. Verbal Jint)_Music Video.mp4 --> …
Run Code Online (Sandbox Code Playgroud) 我已经编写了一个程序,该程序将多个测试用例作为输入,而对于每个测试用例,则需要一个数字作为输入。最后,它检查您输入的数字是否是斐波那契数字,并进行相应打印。我在PC上运行它没有问题,但是当我将其上传到CodeChef.com(在这里看到了这个问题)时,它显示了运行时错误。感谢您的任何帮助,由于我是菜鸟,我的代码可能看起来很冗长。欢迎进行任何修改。谢谢!
这是我的代码:
def isperfect(n):
import math
if n < 0:
print("No Solution")
return False
else:
test = int(math.sqrt(n))
return test*test == n
test_cases = int(input())
count = 0
store = []
while count < test_cases:
x = int(input())
store.append(x)
count += 1
for each_item in store:
assert isinstance(each_item, int)
s1 = 5*each_item*each_item-4
s2 = 5*each_item*each_item+4
if(isperfect(s1) == True or isperfect(s2) == True):
print("YES")
else:
print("NO")
Run Code Online (Sandbox Code Playgroud) 我最近开始学习Python并开始阅读Head First Python和Learn Python The Hard Way.这两本书似乎都没有详细解释所有内容.我想知道阅读Python文档而不是这些书是否是一个好主意.任何帮助,将不胜感激.提前致谢!
我目前正在尝试制作凯撒解码器,所以我试图找出如何获取用户输入的移位值,并使用该输入来移动列表中的每个项目.但每次我尝试,它只是一直给我一个错误.
例如:
word
在ASCII中将是:
[119, 111, 114, 100]
Run Code Online (Sandbox Code Playgroud)
如果转移的给定输入是2
,我希望列表是:
[121, 113, 116, 102]
Run Code Online (Sandbox Code Playgroud)
请帮忙.这是我的第一次编程和这个凯撒解码器让我发疯:(
这就是我到目前为止所拥有的
import string
def main():
inString = raw_input("Please enter the word to be "
"translated: ")
key = raw_input("What is the key value or the shift? ")
toConv = [ord(i) for i in inString] # now want to shift it by key value
#toConv = [x+key for x in toConv] # this is not working, error gives 'cannot add int and str
print "This …
Run Code Online (Sandbox Code Playgroud) 我正在生成一个函数并使用 IIFE 将其推送到数组,如下所示:
var arr = [];
var k;
for(var i=0;i<3;i++) {
k = {"val" : i};
arr.push(
(function(j) {
return function() {
console.log(j)
};
}(k))
)
}
console.log(arr[0](), arr[1](), arr[2]());
Run Code Online (Sandbox Code Playgroud)
输出:
Object {val: 0}
Object {val: 1}
Object {val: 2}
Run Code Online (Sandbox Code Playgroud)
但是我传递的k
是使用 生成的对象i
。由于对象是通过引用传递的,我希望它记录带有值的对象2,2,2
,但我却得到了0,1,2
。这不是按值传递原始类型时的常见行为吗?,为什么即使我使用按引用传递(对象)也会发生同样的事情?
我正在阅读K&R C书,并-->
在优先级表中通过了这个操作符.所以,我想知道是否有类似的运算符,<--
并编写了以下程序:
#include<stdio.h>
void main()
{
int x = 5;
while(0 <-- x)
printf("%d",x);
}
Run Code Online (Sandbox Code Playgroud)
它工作得非常好.那么为什么不< - 不被视为运营商?(因为它不在优先表中!)它的优先级是什么?
python ×8
python-3.x ×4
python-2.x ×2
anaconda ×1
c ×1
c# ×1
closures ×1
cython ×1
decoder ×1
fibonacci ×1
javascript ×1
list ×1
macos ×1
python-3.3 ×1
regex ×1
string ×1
tkinter ×1
unicode ×1
wpf ×1