Прежде, чем я начну, пусть будет известно, что моему классу IS разрешено искать внешнюю помощь для этого задания при условии, что мы не копируем код напрямую. То, что я прошу, это help, а не откровенно нечестно полученный код. Я не собираюсь обманывать, задавая этот вопрос.Как связать списки, скаляры и векторы вместе в этом назначении Python?
Теперь, когда это прояснилось ....
Вот задание:
# 1: Написать функцию scalar_mult (s, v), которая принимает число, S, и список, v и возвращает скалярный кратный v на s.
Например:
def scalar_mult(s, v):
"""
>>> scalar_mult(5, [1, 2])
[5, 10]
>>> scalar_mult(3, [1, 0, -1])
[3, 0, -3]
>>> scalar_mult(7, [3, 0, 5, 11, 2])
[21, 0, 35, 77, 14]
"""
Я начал эту часть, и это то, что у меня есть:
import math
s = input("Please enter a single number to be our scalar value: ")
v = input("Please enter a vector value, like [1, 2] or [5, 6, 3], to be our vector value: ")
#Note to self: TUPLES use the parentheses. LISTS use the brackets
print "scalar_mult(", s, ",", + v, "is:"
print v * s
scalar_mult(s, v)
Но я получаю сообщение об ошибке:
print "scalar_mult(", s, ",", + v, "is:"
TypeError: bad operand type for unary +: 'list'
Do вы понимаете, как это исправить?
А потом есть часть два ...
# 2: Написать функцию замены (s, старый, новый), который заменяет все вхождения старого с новым в строке s.
Например:
def replace(s, old, new):
"""
>>> replace('Mississippi', 'i', 'I')
'MIssIssIppI'
>>> s = 'I love spom! Spom is my favorite food. Spom, spom, spom, yum!'
>>> replace(s, 'om', 'am')
'I love spam! Spam is my favorite food. Spam, spam, spam, yum!'
>>> replace(s, 'o', 'a')
'I lave spam! Spam is my favarite faad. Spam, spam, spam, yum!' """
"""
Я еще не начал # 2, но я не очень понимаю, как подойти к нему. Любые идеи о том, как начать или как это работает?
Это должно быть в пятницу и назначено вчера. Просто FYI.
СПАСИБО ТАК НАЧАЛЬНО заранее всем, кто отвечает - я знаю, что это довольно большой вопрос, чтобы спросить>. <
Если вам нужно уточнить назначение, пожалуйста, скажите мне! Любая помощь была бы ВЕЛИКОЙ оценкой :)
Ooh ... извините за плохое форматирование! Это мой первый вопрос, поэтому я не совсем уверен, как отформатировать код: p –
Для вашей функции замены я настоятельно рекомендую вам ознакомиться с [документацией для встроенных строковых методов] (http://docs.python.org/ библиотека/stdtypes.html # строковой-метода). –
Если вы отделите каждую строку на 4 пробела, она станет блоком кода. (Выбор текста и * затем * нажатие кнопки кода приведет к отступлению от этого текста.) – Amber