当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 9 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 请教一个python问题
帖子发表于 : 2010-11-30 21:09 

注册: 2010-11-29 19:24
帖子: 6
送出感谢: 0 次
接收感谢: 0 次
if self.__hour <12:
standardTime+=" AM"
else:
standardTime+=" PM"

上面这段代码,不知道为什么if那半句能够执行,else这半句执行的时候会报错,如下:
File "Time3.py", line 76, in printStandard
standardTime+=" PM"
TypeError: bad operand type for unary +: 'str'
请高人指点一下,非常感谢!


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 请教一个python问题
帖子发表于 : 2010-11-30 21:12 
头像

注册: 2009-10-09 12:54
帖子: 989
地址: 北京某胡同
系统: debian
送出感谢: 4
接收感谢: 2
把上下文贴出来


_________________
python写的一个跨平台的聊天软件TChat。支持文件传输。
android防火墙droidwall更新,添加月流量统计功能。有兴趣的点我:D
原创Android社交应用[飘],开源免费!


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 请教一个python问题
帖子发表于 : 2010-11-30 21:28 

注册: 2010-09-27 12:59
帖子: 2061
送出感谢: 0 次
接收感谢: 0 次
如果是按12小时记的话
小于12时 显示xxx AM 显示例如:10AM
大于12时 显示xxx PM 显示例如:13PM? 是不是有点不合适呢 。。 12小时制应显示 1PM

一点点小想法。

如果误解lz 请见谅


_________________
生活里,有很多转瞬即逝,像在车站的告别,刚刚还相互拥抱,转眼已各自天涯。很多时候,你不懂,我也不懂,就这样,说着说着就变了,听着听着就倦了,看着看着就厌了,跟着跟着就慢了,走着走着就散了,爱着爱着就淡了,想着想着就算了。


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 请教一个python问题
帖子发表于 : 2010-11-30 22:19 

注册: 2010-11-29 19:24
帖子: 6
送出感谢: 0 次
接收感谢: 0 次
zkwlx 写道:
把上下文贴出来



上文就是一个转换标准时间的代码
代码:
standardTime=""

if self.__hour==0 or self.__hour==12:
    standardTime+="12:"
else:
    standardTime+="%.2d:" % (self.__hour%12)

standardTime+="%.2d:%.2d" %(self.__minute,self.__second)

if self.__hour <12:
    standardTime+="AM"
else:
    standardTime+="PM"


这些都写在printStandard(self)里,其他的变量也都在class中进行了定义,上下两句道理是一样的,所以就没明白下边一句怎么会出错,望高手分析解答~~~
PS:缩进神马的都没有问题,只是这里显示不出来


页首
 用户资料  
 
5 楼 
 文章标题 : Re: 请教一个python问题
帖子发表于 : 2010-12-01 22:00 
头像

注册: 2005-07-02 14:41
帖子: 4160
系统: Ubuntu 14.04 (Kylin)
送出感谢: 64
接收感谢: 12
问题应该出在前面,把整个脚本贴出来。


_________________
https://weakish.github.io


页首
 用户资料  
 
6 楼 
 文章标题 : Re: 请教一个python问题
帖子发表于 : 2010-12-02 17:40 

注册: 2010-11-29 19:24
帖子: 6
送出感谢: 0 次
接收感谢: 0 次
代码:
# Class Time with default constructors

class Time:
   """Class Time with default constructors"""

   def __init__(self, hour=0, minute=0, second=0):
      """Time constructors initializes each data member to zero"""

      self.setTime(hour, minute, second)

   def setTime(self, hour, minute, second):
      """Set values of hour,minute and second"""

      self.setHour(hour)
      self.setMinute(minute)
      self.setSecond(second)

   def setHour(self, hour):
      """Set hour value"""

      if 0<= hour <24:
         self.__hour=hour
      else:
         raise ValueError, "Invalid hour value"

   def setMinute(self, minute):
      """Set minute value"""
      if 0<= minute <60:
         self.__minute=minute
      else:
         raise ValueError, "Invalid minute value"

   def setSecond(self, second):
      """Set second value"""

      if 0<= second < 60:
         self.__second=second
      else:
         raise ValueError, "Invalid second value"

   def getHour(self):
      """Get hour value"""
   
      return self.__hour

   def getMinute(self):
      """Get minute value"""

      return self.__minute

   def getSecond(self):
      """Get second value"""

      return self.__second

   def printMilitary(self):
      """Print Time object in military format"""
 
      print "%.2d:%.2d:%.2d" % \
         (self.__hour, self.__minute, self.__second),

   def printStandard(self):
      """Print Time object in standard format"""

      standardTime=""
      if self.__hour ==0 or self.__hour ==12:
         standardTime+="12:"
      else:
         standardTime+="%d:" % (self.__hour %12)

      standardTime+="%.2d:%.2d" % (self.__minute,self.__second)

      if self.__hour <12:
         standardTime+="  AM"
      else:
         standardTime+="  PM"
     
      print standardTime,



这是全部


最后由 vicky87126 编辑于 2010-12-02 18:37,总共编辑了 1 次

页首
 用户资料  
 
7 楼 
 文章标题 : Re: 请教一个python问题
帖子发表于 : 2010-12-02 18:31 

注册: 2010-11-29 19:24
帖子: 6
送出感谢: 0 次
接收感谢: 0 次
刚才重启了又可以了,只是不知道这个是为什么阿?


页首
 用户资料  
 
8 楼 
 文章标题 : Re: 请教一个python问题
帖子发表于 : 2010-12-02 18:39 

注册: 2010-11-29 19:24
帖子: 6
送出感谢: 0 次
接收感谢: 0 次
另外,写的这个脚本怎么不能运行?

代码:
#Demonstrating defalut constructor method for class Time.

from Time3 import Time

def printTimeValues( timeToPrint ):
    timeToPrint.printMilitary()
    print
    timeToPrint.printStandard()
    print

time1=Time()
time2=Time(2)
time3=Time(21,34)
time4=Time(12,25,42)

print "Constrcted with:"

print "\nall arguments defaulted:"
printTimeValues(time1)

print"\nhour specified; minute and second defaulted"
printTimeValues(time2)

print"\nhour and minute specified; second defaulted"
printTimeValue(time3)

print"\nall specified"
printTimeValue(time4)



引用:
from: can't read /var/mail/Time3
./testTime3.py: line 5: 在未预料的“(”附近出现语法错误
./testTime3.py: line 5: `def printTimeValues( timeToPrint ):'

这个脚本和Time3是放在同一个文件夹中的。
我是菜鸟~~~


页首
 用户资料  
 
9 楼 
 文章标题 : Re: 请教一个python问题
帖子发表于 : 2010-12-02 19:09 

注册: 2010-11-29 19:24
帖子: 6
送出感谢: 0 次
接收感谢: 0 次
已经解决了,我真的太菜了 :em06


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 9 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译