ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 12.01.2010, 23:27
Аватар для TikTik
TikTik
Познающий
Регистрация: 20.02.2009
Сообщений: 86
Провел на форуме:
183326

Репутация: 7
По умолчанию

Код:
import sys
import string

if len(sys.argv)<2:
    print "Usage: leap.py year, year, year."

sys.exit(0)

for i in sys.argvj[:]:
    try:
y=string.atoi(i)

except:

  print i,"is not a year."

continue

  leap="no"

  if y%400==0:

    leap="yes"

  elif y*100==0:

    leap="no"

  elif y%4==0:

    leap="yes"

  else:

    leap="no"


  print y, "leap:", leap, "in the Gregorian calendar"


if y%4==0:

  leap="yes"

else:

  leap="no"


print y, "leap:", leap, "in the Julian calendar"

print "Calculated leapness for", len { sys.argv ) - 1, "years"
Посмотрите пожалуйста что не так с Кодом
 
Ответить с цитированием

  #2  
Старый 12.01.2010, 23:33
Аватар для [Life]
[Life]
Banned
Регистрация: 07.01.2010
Сообщений: 132
Провел на форуме:
63422

Репутация: 8
По умолчанию

Кто знает... ?


Код:

...
gamma_N=round(float(gamma_0**2),8)
#print '%F' %(gamma_N)
i=i+1
ls=str(gamma_N)
ls=ls[2:9]
ls='0.'+ls
print '%F' %(float(ls))
lch=round(float(ls)**2,8)
gamma_0=lch
print ''
...

Это часть метода серединных квадратов... проблема в том, что после получения среза строки, необходимо преобразовать строку во флоат, но как выяснилось переменная получает число в экспоненциальном виде: 0.5e+006 , что нить такое.. ну и следовательно не получается перегнать во флоат.. Как избежать такой формы записи?! надо чтоб было 0.0000005 например, без всяких e....
 
Ответить с цитированием

  #3  
Старый 13.01.2010, 01:30
Аватар для gold-goblin
gold-goblin
Познавший АНТИЧАТ
Регистрация: 26.03.2007
Сообщений: 1,095
Провел на форуме:
5265510

Репутация: 455


По умолчанию

Цитата:
win server 2003
как посмотреть?
в консоле мускул сервера набрать команду хммм если честно не помню =)
попробуйте поискать в интернете или сделать вот что: после завершения скрипта в консоле мускула введите mysql_error это пакежет последнюю ошибку (тоесть ошибку подключения вашего клиента)
 
Ответить с цитированием

  #4  
Старый 13.01.2010, 01:35
Аватар для gold-goblin
gold-goblin
Познавший АНТИЧАТ
Регистрация: 26.03.2007
Сообщений: 1,095
Провел на форуме:
5265510

Репутация: 455


По умолчанию

Цитата:
экспоненциальном виде: 0.5e+006 , что нить такое.. ну и следовательно не получается перегнать во флоат.. Как избежать такой формы записи?! надо чтоб было 0.0000005 например, без всяких e....
если память не подводит то перед преобразованием надо использовать функцию abs()
 
Ответить с цитированием

  #5  
Старый 18.01.2010, 17:51
Аватар для gold-goblin
gold-goblin
Познавший АНТИЧАТ
Регистрация: 26.03.2007
Сообщений: 1,095
Провел на форуме:
5265510

Репутация: 455


По умолчанию

Помогите с регулярками плиз =)
Блин что-то я их не понимал и понять не могу =(
Помогите составит регулярку чтоб выдрать строку вида: http://****.ru или http://***.***.ru Буду благодарен =)
 
Ответить с цитированием

  #6  
Старый 18.01.2010, 18:29
Аватар для login999
login999
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме:
4512757

Репутация: 973


По умолчанию

Цитата:
Сообщение от gold-goblin  
Помогите с регулярками плиз =)
Блин что-то я их не понимал и понять не могу =(
Помогите составит регулярку чтоб выдрать строку вида: http://****.ru или http://***.***.ru Буду благодарен =)
Код:
import re

data = "http://vasya.ru ,http://super.vasya.ru"
links_1 = re.findall(r'''(http\:\/\/.*?\.ru)''', data)
links_2 = re.findall(r'''(http\:\/\/.*?\..*?\.ru)''', data)
links_3 = re.findall(r'''(http\:\/\/.*?\.ru)|(http\:\/\/.*?\..*?\.ru)''', data)

print links_1
print links_2
print links_3
Правда не совсем то
 
Ответить с цитированием

  #7  
Старый 20.01.2010, 00:40
Аватар для Vaal
Vaal
Новичок
Регистрация: 08.01.2010
Сообщений: 11
Провел на форуме:
14160

Репутация: 0
По умолчанию

по регуляркам вот тут хорошая статьи
http://www.intuit.ru/department/pl/python/6/5.html
там есть скрипт дебаг регулярных выражений



тут такой вопрос возник
как перезапустить скрипт? т.е. не стартануть его "копию" после завершения
а именно чтобы программа начала выполняться сначала


update
нашел вроде бы простое решение
сделать бесконечный цикл
while True:

какие подводные камни могут всплыть?

Последний раз редактировалось Vaal; 20.01.2010 в 01:11..
 
Ответить с цитированием

  #8  
Старый 20.01.2010, 20:23
Аватар для login999
login999
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме:
4512757

Репутация: 973


По умолчанию

Цитата:
Сообщение от Vaal  
по регуляркам вот тут хорошая статьи
http://www.intuit.ru/department/pl/python/6/5.html
там есть скрипт дебаг регулярных выражений



тут такой вопрос возник
как перезапустить скрипт? т.е. не стартануть его "копию" после завершения
а именно чтобы программа начала выполняться сначала


update
нашел вроде бы простое решение
сделать бесконечный цикл
while True:

какие подводные камни могут всплыть?
Для дебага регулярок есть Kodos.
Относительно бесконечной работы - всё зависит от того, что ты хочешь именно, но обычно while True хватает за глаза.
 
Ответить с цитированием

  #9  
Старый 20.01.2010, 14:24
Аватар для gold-goblin
gold-goblin
Познавший АНТИЧАТ
Регистрация: 26.03.2007
Сообщений: 1,095
Провел на форуме:
5265510

Репутация: 455


По умолчанию

Бесконечный цикл самое надежное решение (ИМХО).
Подводных камней быть не должно. Могут возникнуть проблемы с потоками (если ты их используешь) при условии что 1 из потоков не завершится (со временем их станет очень много.)
 
Ответить с цитированием

  #10  
Старый 21.01.2010, 01:12
Аватар для login999
login999
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
Провел на форуме:
4512757

Репутация: 973


По умолчанию

Цитата:
Сообщение от Idainet  
Vaal,
через рекурсию
Враки.
Код:
#! /usr/bin/env python
#-*-encoding:UTF-8-*-

import sys
print u"Ваша функция может выполниться максимум {0} раз".format(sys.getrecursionlimit())
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ