2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу 1, 2, 3, 4, 5 ... 11  След.
 
 Курс по Python
Сообщение11.06.2018, 12:57 


21/05/16
4292
Аделаида
Ktina в сообщении #1318840 писал(а):
kotenok gav в сообщении #1318641 писал(а):
Кстати, Ktina, а может завести тему, где я буду учить вас и всех желающих Python?

Я только за!

Так-с, с чего начнем?

 Профиль  
                  
 
 Re: Курс по Python
Сообщение11.06.2018, 13:08 
Заслуженный участник


27/04/09
28128
Я бы начал со ссылок на уже существующие проверенные достаточным количеством людей курсы. :-)

 Профиль  
                  
 
 Re: Курс по Python
Сообщение11.06.2018, 13:30 
Аватара пользователя


29/05/17
797
kotenok gav в сообщении #1318906 писал(а):
Так-с, с чего начнем?

Может быть с этого:

(Программирование на Python)


 Профиль  
                  
 
 Re: Курс по Python
Сообщение11.06.2018, 14:02 
Заслуженный участник
Аватара пользователя


30/01/06
72407
Начните с того, чтобы предоставить читателям онлайновый sandbox / playground.

 Профиль  
                  
 
 Re: Курс по Python
Сообщение11.06.2018, 14:08 


21/05/16
4292
Аделаида
Munin в сообщении #1318940 писал(а):
Начните с того, чтобы предоставить читателям онлайновый sandbox / playground.

http://pythontutor.com/visualize.html

 Профиль  
                  
 
 Re: Курс по Python
Сообщение11.06.2018, 14:14 
Заслуженный участник
Аватара пользователя


30/01/06
72407
Спасибо!

Первым делом хотелось бы познакомиться с:
    1. Как писать выражения (арифметические, логические, строковые, например).
    2. Какие есть простейшие встроенные типы данных.
    3. Как писать и вызывать простейшие функции.
    4. Как писать и использовать простейшие классы.


-- 11.06.2018 15:06:10 --

К пп. 1, 2: Как делать простейший ввод-вывод.

 Профиль  
                  
 
 Re: Курс по Python
Сообщение11.06.2018, 15:20 


21/05/16
4292
Аделаида
Пока кратко (завтра подробней обьясню):
Munin в сообщении #1318944 писал(а):
1. Как писать выражения (арифметические, логические, строковые, например).

Просьба уточнить.
Munin в сообщении #1318944 писал(а):
2. Какие есть простейшие встроенные типы данных.

Числа, строки, булеаны, массивы, словари, множества, None.
Munin в сообщении #1318944 писал(а):
3. Как писать и вызывать простейшие функции.

Писать:
Используется синтаксис Python
def f(x):
    t=x+2
    return t

Или:
Используется синтаксис Python
def f(x):
    massiv=[]
    massiv.append(x)

Вызывать:
Используется синтаксис Python
m=f(3)

Или:
Используется синтаксис Python
f(3)

Munin в сообщении #1318944 писал(а):
4. Как писать и использовать простейшие классы.

Писать:
Используется синтаксис Python
class Cl:
   #функции, самая известная - __init__ (конструктор класса)
   #к примеру:
   def __init__(self, x, y):
       self.xaxis=x
       self.yaxis=y
       #self - сам обьект
       #xaxis, yaxis - атрибуты
 

#что-то там - комментарии в Python.
Использовать:
Используется синтаксис Python
first=Cl(4,5)
print(first.xaxis, first.yaxis) #4 5

Print - написать что-нибудь. Если несколько аргументов - обычно они просто разделяются пробелами.

-- 11 июн 2018, 21:51 --

По поводу ввода-вывода:
Ввод: input(что-то там)
Вывод: print(что-то там)

 Профиль  
                  
 
 Re: Курс по Python
Сообщение11.06.2018, 15:36 
Заслуженный участник
Аватара пользователя


30/01/06
72407
kotenok gav в сообщении #1318961 писал(а):
Просьба уточнить.

Ну вдруг используется какой-нибудь странный синтаксис (например, в Forth - обратная польская (постфиксная) запись без скобок, в Lisp префиксная со скобками).

В разных языках по-разному выглядят:
- операция возведения в степень (не всегда есть);
- логические операции и их приоритеты;
- операции со строками.

 Профиль  
                  
 
 Re: Курс по Python
Сообщение11.06.2018, 15:42 


21/05/16
4292
Аделаида
Munin в сообщении #1318972 писал(а):
операция возведения в степень

3**5 равно $3^5$.
Munin в сообщении #1318972 писал(а):
логические операции и их приоритеты

Про это расскажу завтра.
Munin в сообщении #1318972 писал(а):
операции со строками

Сначала скажу как выглядит строка: "abc" или 'abc' (одно и тоже).
Вроде, есть одна операция со строками: "abc"+"def" тоже самое, что и "abcdef".

 Профиль  
                  
 
 Re: Курс по Python
Сообщение11.06.2018, 16:05 


27/08/16
9426
Munin в сообщении #1318940 писал(а):
Начните с того, чтобы предоставить читателям онлайновый sandbox / playground.
IMHO лучше начинать с установки на комп Анаконды. https://www.anaconda.com Третью версию питона. В качестве интерактивной среды использовать Spyder - он ставится автоматом.

 Профиль  
                  
 
 Re: Курс по Python
Сообщение11.06.2018, 16:07 
Заслуженный участник
Аватара пользователя


30/01/06
72407
Используется синтаксис Python
def fib(x):
    if x>1:
        ar=fib(x-1)
        ar.append(ar[len(ar)-1]+ar[len(ar)-2])
        return ar
    else:
        ar=[]
        ar.append(1)
        ar.append(1)
        return ar

print(fib(10))

Что плохого в этом коде?

-- 11.06.2018 16:08:13 --

realeugene в сообщении #1318992 писал(а):
IMHO лучше начинать с установки на комп Анаконды.

Нет, извините, ставить себе что-то на комп я буду только тогда, когда возьмусь за это всерьёз и профессионально. Пока песочницы хватит.

 Профиль  
                  
 
 Re: Курс по Python
Сообщение11.06.2018, 16:10 


27/08/16
9426
Munin в сообщении #1318994 писал(а):
Нет, извините, ставить себе что-то на комп я буду только тогда, когда возьмусь за это всерьёз и профессионально. Пока песочницы хватит.

Это ваш личный выбор. Другие могут выбрать иначе.

 Профиль  
                  
 
 Re: Курс по Python
Сообщение11.06.2018, 16:12 


21/05/16
4292
Аделаида
Munin в сообщении #1318994 писал(а):
Что плохого в этом коде?

Громоздкость; лучше так:
Используется синтаксис Python
def fib(x):
    if x>1:
        ar=fib(x-1)
        ar.append(ar[len(ar)-1]+ar[len(ar)-2])
        return ar
    else:
        return [1, 1]

print(fib(10))


-- 11 июн 2018, 22:44 --

Для больших массивов еще лучше так:
Используется синтаксис Python
def fib(x):
    if x>1:
        ar=fib(x-1)
        ar.append(ar[x]+ar[x-1])
        return ar
    else:
        return [1, 1]

print(fib(10))

 Профиль  
                  
 
 Re: Курс по Python
Сообщение11.06.2018, 16:18 
Заслуженный участник
Аватара пользователя


30/01/06
72407
Окей, спасибо!

Следующим шагом я хотел бы вывести треугольник Паскаля. Как мне для этого (постепенно) формировать двумерный массив? (Я сообразил, что можно обойтись одномерными, но хочу через двумерный.)

 Профиль  
                  
 
 Re: Курс по Python
Сообщение11.06.2018, 16:23 
Заслуженный участник


27/04/09
28128
Я бы предложил вообще использовать динамическое программирование (и мутировать массив). При этом все концы можно опустить в замыкание, и никто этот массив не испортит кроме функции, которая делает вычисления. И можно будет организовать даже так, чтобы он жил до конца дней и функция использовала имеющиеся там значения вместо счёта с нуля.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 163 ]  На страницу 1, 2, 3, 4, 5 ... 11  След.

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: mihaild


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group