【问题标题】:CGI/Python Script - Number Cycling and Displaying PhotosCGI/Python 脚本 - 数字循环和显示照片
【发布时间】:2013-09-05 01:30:36
【问题描述】:

我正在使用 Python 编写 CGI 脚本,我必须在其中显示图像和名称。当您单击下一张和/或上一张时,它会在列表中显示下一张/上一张图片。

下面是我的代码:

#!/usr/bin/python

import cgi

ls = ["name1", "name2", "name3", "name4", "name5"]

print "Content-type: text/html"
print 

data = cgi.FieldStorage()

number = data.getvalue("number", "0")
int_num = int(number)

item = ls[int_num]

print """
  <table border>
    <tr> <td colspan=2 align=center> <font size=+3 color=red> %s </font> </td> </tr>
    <tr> <td align=center> <a href="/cgi-bin/09042013/lab2script1?number=%s">Previous</a>         </td>
     <td align=center> <a href="/cgi-bin/09042013/lab2script1?number=%s">Next</a> </td>
  </table>

""" % (number, int(number) - 1, int(number) + 1)

print "%s" % (item)

这是我的问题: 1.) 我将如何实现一个功能,如果它到达名称列表的末尾,它会循环回到前面,反之亦然。我知道这将是一个简单的 if 语句,但是我的所有想法都会导致“服务器错误”。 2.) 要使用 python 显示图片,我是否可以像使用 ls(名称列表)一样使用包含图像位置的列表?

任何帮助将不胜感激!谢谢!

【问题讨论】:

    标签: python cgi


    【解决方案1】:

    为了在达到 a 限制时旋转到列表的前面或后面,您必须替换代码:

    % (number, int(number) - 1, int(number) + 1)
    

    作者:

    % (number, (int(number)-1)%n, (int(number)+1)%n)
    

    应用于数字的运算符“%”为您提供除法的余数。 您还应该添加以下行:

    n=len(ls)
    

    在ls的定义之后

    在这里,例如,当到达上边界时,5 将被 5/5 除法的余数(即 0)替换,因此此代码获取到列表开头的图形的链接。当到达下边界时,想法是类似的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-05
      • 2014-09-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-17
      • 2021-07-31
      相关资源
      最近更新 更多