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
795
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, Супермодераторы



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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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