小编Aug*_*toQ的帖子

单击时,OptionMenu不会显示第一个选项(Tkinter)

OptionMenu在我的代码中添加了一个小部件,并为其分配了一个列表.这是这样的:

z = StringVar()   
z.set(userList[0])    
usersOption = OptionMenu(frame1, z, *userList)#, command=changeUser)
usersOption.pack(side=RIGHT, padx=3)
Run Code Online (Sandbox Code Playgroud)

现在,我估计它将显示所述列表中的所有选项.如此:

Option 1 \/ <-- the box with the selected option
Option 1 }\__the options that show on click
Option 2 }/
Run Code Online (Sandbox Code Playgroud)

但它实际上只显示第二个选项,当我选择它时,基本上没有办法回来,如果我再次点击该框,它只保持显示选项2,即使使用向上和向下键我也无法改变它.我试图寻找解决方案,但我无处可去,所以我开始认为它是小部件的默认操作方式,但我没有发现任何东西向我展示如何在我阅读的文档中解决它.
PS:我正在使用Python 3.3

python tkinter optionmenu

5
推荐指数
3
解决办法
1918
查看次数

Django自定义404页面无效

所以,在我的项目中,我想添加一个自定义的404错误页面,所以我按照我在网上找到的内容,但似乎没有什么对我有用.

这就是我的文件:

settings.py

import os
# Django settings for HogwartsMail project.

PROJECT_PATH = os.path.realpath(os.path.dirname(__file__))

DEBUG = False
TEMPLATE_DEBUG = DEBUG

# Hosts/domain names that are valid for this site; required if DEBUG is False
# See https://docs.djangoproject.com/en/1.5/ref/settings/#allowed-hosts
ALLOWED_HOSTS = ["*"]
Run Code Online (Sandbox Code Playgroud)

urls.py

urlpatterns = patterns('',
    ...
)

handler404 = "HogwartsMail.views.error404"
Run Code Online (Sandbox Code Playgroud)

views.py

def error404(request):
    return render(request,'404.html')
Run Code Online (Sandbox Code Playgroud)

每当我尝试输入一个随机网址时,我得到的服务器错误(500)并没有得到404错误.

正如我所说,我尝试了许多不同的方式,但没有一个真正适合我.

另外,我遇​​到的另一个问题是我加载的页面非常慢,并且它们没有打开样式或图像,所以我认为,当DEBUG = False我需要一切已经在线时.那是对的吗?

python django error-handling http-status-code-404

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

list.reverse()在Django中无法正常工作

我是第一个使用Django框架的项目,我决定创建一个博客,因为很容易在网上找到它的内容.然后,我发现了Paginator模块,并决定使用它.问题是,每当我添加一个帖子,它就会到达数据库的末尾,所以我有一个博客,到目前为止,它首先显示旧帖子.

因此,我决定使用.reverse(),如下所示:

def index(request):
    posts = Post.objects.all()
    posts.reverse()
    paginator = Paginator(posts, 2)

    try:
        page = int(request.GET.get("page", "1"))
    except ValueError:
        page = 1

    try:
        posts = paginator.page(page)
    except (InvalidPage, EmptyPage):
        posts = paginator.page(paginator.num_pages)

    return render_to_response('index.html', {
                                             'Posts': posts,
                                             'Sideposts': Sidepost.objects.all(),
                                             })
Run Code Online (Sandbox Code Playgroud)

唯一的问题是,这不起作用,至少不与Paginator一起使用.当我停止使用Paginator时,它可以工作,但不会.

我认为这是一个非常奇怪的行为,我环顾四周但找不到任何帮助我解决这个问题的东西.我做错了吗?

python django blogs pagination

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

.split(",")分隔字符串的每个字符

在程序的某个时刻,我要求它取用户的文本输入并根据它的逗号分隔文本,然后我",".join再次在txt文件中.我们的想法是拥有一个包含所有逗号分隔信息的列表.

问题是,显然,当我",".join这样时,它用逗号分隔每一个字符,所以如果我有字符串info1,info2它分开,得到info1 | info2,但是,当再次加入它时,它结束就像i,n,f,o,1,,,i,n,f,o,2,这是非常不合适的,因为它从txt文件中获取文本,以便稍后在程序中向用户显示该文本.任何人都可以帮助我吗?

        categories = open('c:/digitalLibrary/' + connectedUser + '/category.txt', 'a')
        categories.write(BookCategory + '\n')
        categories.close()
        categories = open('c:/digitalLibrary/' + connectedUser + '/category.txt', 'r')
        categoryList = categories.readlines()
        categories.close()

            for category in BookCategory.split(','):
                for readCategory in lastReadCategoriesList:
                    if readCategory.split(',')[0] == category.strip():
                        count = int(readCategory.split(',')[1])
                        count += 1
                        i = lastReadCategoriesList.index(readCategory)
                        lastReadCategoriesList[i] = category.strip() + "," + str(count).strip()
                        isThere = True
                if not isThere:
                    lastReadCategoriesList.append(category.strip() + ",1")
                isThere = False

            lastReadCategories = …
Run Code Online (Sandbox Code Playgroud)

python csv string

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

如何填充带有空格的字符串,以便最终得到特定数量的字符?蟒蛇

我有一个列表,其中包含一些书籍名称及其作者,但我希望它看起来很有条理,所以我希望它能够获得书名,然后用空格填写它,最终得到100个字符,与书的长度无关标题.然后,它会添加书名.
到目前为止,我试过这个:

for i in range(0, len(bookList)):
    t = 100 - len(bookList[i])
    numbofspaces = ""
    for j in range(0, t):
        numbofspaces += " "

    s.append(bookList[i] + numbofspaces + authorList[i])
Run Code Online (Sandbox Code Playgroud)

当我在python shell中尝试它时它工作得很好,但是当它从列表中获取标题时,它不起作用,为什么呢?

python string

0
推荐指数
2
解决办法
111
查看次数