Найти - Пользователи
Полная версия: http://www.python.org/ и поиск исходников
Начало » Python для новичков » http://www.python.org/ и поиск исходников
1
Michail_V
Вопрос конечно совсем глупый, но на то и есть вопросы для новичкой

Как найти исходники и где они лежат на сайте http://www.python.org/

Может кто может написать небольшое описание для новичков…
Shaman
http://www.python.org/ftp/python/ (если ещё не потёрли)
Michail_V
а не подскажете, в каком фалйе описываются носновные методи и функции (те, для которых не надо писать import)

к примеру для функции int(), print() ну и всё, что загружается автоматически, без дополнительного импортирования
py.user.next
Michail_V
а не подскажете, в каком фалйе описываются носновные методи и функции (те, для которых не надо писать import)
python.org. built-in
Michail_V

py.user.next

это просто описание работы функций…. а где их код?
0xKirill
Наверное в …/Python/bltinmodule.c
Shaman
Кто интересуется кодом, тот в состоянии его найти сам.

Print питона 3.3
static PyObject *
builtin_print(PyObject *self, PyObject *args, PyObject *kwds)
{
static char *kwlist[] = {"sep", "end", "file", "flush", 0};
static PyObject *dummy_args;
PyObject *sep = NULL, *end = NULL, *file = NULL, *flush = NULL;
int i, err;

if (dummy_args == NULL && !(dummy_args = PyTuple_New(0)))
return NULL;
if (!PyArg_ParseTupleAndKeywords(dummy_args, kwds, "|OOOO:print",
kwlist, &sep, &end, &file, &flush))
return NULL;
if (file == NULL || file == Py_None) {
file = PySys_GetObject("stdout");
/* sys.stdout may be None when FILE* stdout isn't connected */
if (file == Py_None)
Py_RETURN_NONE;
}

if (sep == Py_None) {
sep = NULL;
}
else if (sep && !PyUnicode_Check(sep)) {
PyErr_Format(PyExc_TypeError,
"sep must be None or a string, not %.200s",
sep->ob_type->tp_name);
return NULL;
}
if (end == Py_None) {
end = NULL;
}
else if (end && !PyUnicode_Check(end)) {
PyErr_Format(PyExc_TypeError,
"end must be None or a string, not %.200s",
end->ob_type->tp_name);
return NULL;
}

for (i = 0; i < PyTuple_Size(args); i++) {
if (i > 0) {
if (sep == NULL)
err = PyFile_WriteString(" ", file);
else
err = PyFile_WriteObject(sep, file,
Py_PRINT_RAW);
if (err)
return NULL;
}
err = PyFile_WriteObject(PyTuple_GetItem(args, i), file,
Py_PRINT_RAW);
if (err)
return NULL;
}

if (end == NULL)
err = PyFile_WriteString("\n", file);
else
err = PyFile_WriteObject(end, file, Py_PRINT_RAW);
if (err)
return NULL;

if (flush != NULL) {
PyObject *tmp;
int do_flush = PyObject_IsTrue(flush);
if (do_flush == -1)
return NULL;
else if (do_flush) {
tmp = PyObject_CallMethod(file, "flush", "");
if (tmp == NULL)
return NULL;
else
Py_DECREF(tmp);
}
}

Py_RETURN_NONE;
}
py.user.next
Michail_V
это просто описание работы функций…. а где их код?
git clone git://github.com/akheron/cpython
там и код, и изменения можно отслеживать, и любую версию собрать
Singularity
Гитхаб это зеркало, да ?
http://hg.python.org/cpython/
py.user.next
Singularity
Гитхаб это зеркало, да ?
описание
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB