Змея / Говнокод #7506 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
def MonthsListGen(*args, **kwargs):
	from datetime import datetime

	if kwargs.has_key('month') and kwargs.has_key('year'):
		return "%s-%s"%(kwargs['year'], "0%d"%kwargs['month'] if kwargs['month']<10 else str(kwargs['month']))

	if kwargs.has_key('date'): return MonthsListGen(year = kwargs['date'].year, month = kwargs['date'].month)

	if kwargs.has_key('decodeName'): return MONTH_NAMES[int(kwargs['decodeName'].split('-')[1])]
	if kwargs.has_key('decodeYear'): return int(kwargs['decodeYear'].split('-')[0])
	if kwargs.has_key('startDate') and kwargs.has_key('endDate'):
		startDate = kwargs['startDate']
		endDate = kwargs['endDate']
		monthList = []
		if startDate.year < endDate.year:
			startDate1 = startDate
			endDate1 = datetime.strptime('%d.%d.%d'%(DAYS_IN_MONTH[12], 12, startDate1.year) , '%d.%m.%Y')
			monthList = MonthsListGen(startDate = startDate1, endDate = endDate1)

			startDate2 = datetime.strptime('%d.%d.%d'%(1, 1, startDate1.year+1) , '%d.%m.%Y')
			endDate2 = endDate
			monthList += MonthsListGen(startDate = startDate2, endDate = endDate2)
			return monthList
		if startDate.year == endDate.year:
			monthRange = range(startDate.month, endDate.month+1)
			year = startDate.year
			for monthNo in monthRange:
				monthList.append(MonthsListGen(year = year, month = monthNo))
			return monthList
	return False

Вместо того, чтобы писать несколько разных функций, решил сделать одну, которая почти во всех случаях вызывает сама себя с разными параметрами.

hakimovis hakimovis, (Updated )

Комментарии (13, +13)

Змея / Говнокод #7487 Ссылка на оригинал

0

  1. 1
pygame.mouse.set_cursor((16, 19), (0, 0), (128, 0, 192, 0, 160, 0, 144, 0, 136, 0, 132, 0, 130, 0, 129, 0, 128, 128, 128, 64, 128, 32, 128, 16, 129, 240, 137, 0, 148, 128, 164, 128, 194, 64, 2, 64, 1, 128), (128, 0, 192, 0, 224, 0, 240, 0, 248, 0, 252, 0, 254, 0, 255, 0, 255, 128, 255, 192, 255, 224, 255, 240, 255, 240, 255, 0, 247, 128, 231, 128, 195, 192, 3, 192, 1, 128))#костыль))

Разгребал сорцы одной совей древней программки, нашел это.
ЗЫ: комент таким и был

TheHamstertamer TheHamstertamer, (Updated )

Комментарии (101, +101)

Змея / Говнокод #7467 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
T, b= 0, []
While t!=10:
  If t!=6:
    Print ''Чётные числа''
    A = int(raw_input('>> '))
    B.append(a)
  If t!=500:
    Print 'не чётные'
    А = int(raw_input('>> '))
    B.append(a)

#якобы условия для того чтоб ввод был как бы зеброй, четные, не чётные#

KATAJIU3ATOP KATAJIU3ATOP, (Updated )

Комментарии (6, +6)

Змея / Говнокод #7372 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
if cells[x-1,y-1] == 1: pos+=1
else:
  if cells[x-1,y-1] == -1: neg+=1
if cells[x-1,y] == 1: pos+=1
else:
  if cells[x-1,y] == -1: neg+=1
if cells[x-1,y+1] == 1: pos+=1
else:
  if cells[x-1,y+1] == -1: neg+=1

if cells[x,y-1] == 1: pos+=1
else:
  if cells[x,y-1] == -1: neg+=1
if cells[x,y] == 1: pos+=1
else:
  if cells[x,y] == -1: neg+=1
if cells[x,y+1] == 1: pos+=1
else:
  if cells[x,y+1] == -1: neg+=1

if cells[x+1,y-1] == 1: pos+=1
else:
  if cells[x+1,y-1] == -1: neg+=1
if cells[x+1,y] == 1: pos+=1
else:
  if cells[x+1,y] == -1: neg+=1
if cells[x+1,y+1] == 1: pos+=1
else:
  if cells[x+1,y+1] == -1: neg+=1

Иначе никак =D.

Fai Fai, (Updated )

Комментарии (5, +5)

Змея / Говнокод #7344 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
  56. 56
  57. 57
  58. 58
  59. 59
  60. 60
  61. 61
  62. 62
class Thread:
    ... other methods ...
    def SerializeXml(self,f):
        sp = sorted(self.postnumbers)
        f.write("<thread><number>%d</number>\n<posts>"%self.GetNumber())
        for i in sorted(self.postnumbers):
            f.write(self.posts[self.postnumbers_dict[i]].SerializeXml()+"\n")
        f.write("</posts></thread>")
    def CreatePost(self):
        return Parser.Post()
    def DeserializeXml(self,value):
        try:
            try:
                self.number = int(re.findall(r"""<number>(\d+)</number>""",value)[0])
            except :
                self.number = 0
            posts = re.findall(r"""<post>(.+?)</post>""",value,re.DOTALL)
            for p in posts:
                po = self.CreatePost()
                po.DeserializeXml(p)
                self.posts.append(po)
                self.postnumbers_dict[po.GetNumber()] = len(self.posts)-1
                self.postnumbers.add(po.GetNumber())
            return True
        except:
            return False
class Post:
    ... other methods ...
    def safexml(self,string):
        return string.replace("<","<").replace(">",">")
    def _unescape_xml(self,string):
        return string.replace("<","<").replace(">",">")
    def SerializeXml(self):
        return """<post><postnumber>%d</postnumber>\n<sage>%d</sage>\n<deleted>%d</deleted>\n<subj>%s</subj>\n<name>%s</name>\n<trip>%s</trip>\n<attachments>%s</attachments>\n<comment>%s</comment></post>"""% \
    (self.GetNumber(),self.GetSage(),self.GetDeleted(),self.safexml(self.GetSubject()),self.safexml(self.GetPostername()),self.safexml(self.GetPostertrip()), \
     "\n".join(["<attachment><filename>%s</filename><filelink>%s</filelink></attachment>"%(l,self.safexml(n)) for ((n,l)) in self.attachments]),(self.safexml(self.GetComment())))
    def DeserializeXml(self,string):
        try:
            self.number = int(self._GetVal(string,"postnumber")[0])
        except:
            self.number = None
        ...
        try:
            self.postertrip = self._unescape_xml(self._GetVal(string,"trip")[0])
        except:
            self.postertrip = None
        try:
            self.comment = self._unescape_xml(self._GetVal(string,"comment")[0])
        except:
            self.comment = None
        self.attachments = []
        try:
            string = self._GetVal(string,"attachments")[0]
            string = self._GetVal(string,"attachment")
            for att in string:
                (l,n) = re.findall(r"""<filename>(.+?)</filename><filelink>(.+)</filelink>""",att,re.DOTALL)[0]
                self.attachments.append((urllib2.quote(n),n))
        except :
            pass
                
    def _GetVal(self,string,value):
        return re.findall(r"""<%s>(.*?)</%s>"""%(value,value),string,re.DOTALL)

Всем xml, посоны!
https://github.com/hashme33/BoardToJabber/blob/master/src/main/Parser.py#L24

pythonic pythonic, (Updated )

Комментарии (15, +15)

Змея / Говнокод #7323 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
{% if field.help_text %}
<tr>
<td></td>
<td colspan="2" style="padding-top: 0px; padding-bottom: 10px;">{{ field.help_text|safe }}</td>
<td>
<img id="captcha_img" src="<?php echo $absolute_page_path; ?>captcha/captcha.php?ref=register"/>
</td>
{% endif %}

Вот такую веселую хрень встретил в джанговских темплейтах =)

de_orion de_orion, (Updated )

Комментарии (8, +8)