Что означает знак процента?

Содержание

Что означает знак процента означает в Python

Что означает знак процента?

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

>>> for n in range(2, 10):… for x in range(2, n):… if n % x == 0:… print(n, 'equals', x, '*', n//x)… break… else:… # loop fell through without finding a factor… print(n, 'is a prime number')…

Я понимаю, что двойное == -это тест на равенство, но я не понимаю части if n % x . Например, я могу вербально пройти через каждую часть и сказать, что делает утверждение для примера. Но я не понимаю, как сюда попадает знак процента.

Что же на самом деле говорит if n % x ?

python operators modulo
ИсточникLonnie Price     07 июня 2009 в 06:47

  • Bash: манипулирование строками (знак процента) Что означает знак процента в bash при манипулировании строками? Например, что означает ${0%/*} ?
  • Что означает знак & ? В некоторой логике Omron plc у меня есть оператор move, который выглядит следующим образом ———- |@Mov(021) | | | | |&110 | | | | | |D5000 | | | |(value) | | | ———- Смущен относительно того, что означает знак @ и знак &? Причина, по которой я спрашиваю, заключается в том, что…

% Делает две вещи, в зависимости от своих аргументов. В этом случае он действует как оператор по модулю, то есть, когда его аргументы являются числами, он делит первое на второе и возвращает остаток . 34 % 10 == 4 так как 34 делится на 10 — это три, а остаток равен четырем.

Если первый аргумент является строкой, он форматирует ее с помощью второго аргумента. Это немного запутанно, поэтому я буду ссылаться на документацию , но только в качестве примера:

>>> «foo %d bar» % 5'foo 5 bar'

Однако поведение форматирования строки дополняется с Python 3.1 в пользу механизма string .format() :

Операции форматирования, описанные здесь, демонстрируют различные причуды, которые приводят к ряду распространенных ошибок (таких как неправильное отображение кортежей и словарей). Использование нового интерфейса str.format() помогает избежать этих ошибок, а также обеспечивает в целом более мощный, гибкий и расширяемый подход к форматированию текста.

И, к счастью, почти все новые функции также доступны с python 2.6 и далее.

SingleNegationElimination     07 июня 2009 в 06:58

Оператор модуля; дает остаток левого значения, деленный на правое значение. Нравится:

3 % 1 будет равно нулю (так как 3 делится равномерно на 1)

3 % 2 будет равно 1 (так как при делении 3 на 2 получается остаток от 1).

brettkelly     07 июня 2009 в 06:50

Stephen     25 апреля 2017 в 04:56

  • Что означает знак процента в Python? Что означает знак процента в Python? например : Часть этого кода 'j%i%im%i'%(b,c,d) ? >>> while d < len(r[0][b][c]): >>> if r[0][b][c][d] >= 0 and e == 0: >>> C.append({'operation':'j%i%im%i'%(b,c,d),'energie':r[1][b][c][d]},) >>> e = 1
  • что означает & > > знак в scala? Я новичок в scala. Я пытаюсь понять следующее. Но есть и такой знак &>> . Я не знаю, что означает этот знак. Поиск в Google тоже не помог. Что означает этот знак &>> ? Ниже приведен код — val consume8MB = takeLines[Array[Byte]](1024 * 1024 * 8) &>> Iteratee.consume()…

Что означает знак процента?

Это оператор в Python, который может означать несколько вещей в зависимости от контекста. Многое из того, что следует ниже, уже упоминалось (или намекалось) в других ответах, но я подумал, что было бы полезно представить более подробное резюме.

% для чисел: операция по модулю / остаток / Rest

Знак процента — это оператор в Python . Это описывается как:

x % y remainder of x / y

Таким образом, он дает вам остаток/rest, который остается , если вы «floor divide» x на y. Вообще (по крайней мере в Python) дано число x и делитель y :

x == y * (x // y) + (x % y)

Например если вы делите 5 на 2:

>>> 5 // 22>>> 5 % 21 >>> 2 * (5 // 2) + (5 % 2)5

В общем случае вы используете операцию по модулю, чтобы проверить, делится ли число равномерно на другое число, потому что кратное числу по модулю это число возвращает 0:

>>> 15 % 5 # 15 is 3 * 50 >>> 81 % 9 # 81 is 9 * 90

Вот как это используется в вашем примере, это не может быть простым числом, если оно кратно другому числу (кроме самого себя и единицы), вот что это делает:

if n % x == 0: break

Если вы считаете, что n % x == 0 не очень описательно, вы можете поместить его в другую функцию с более описательным именем:

def is_multiple(number, divisor): return number % divisor == 0 … if is_multiple(n, x): break

Читайте также  Как рассчитать чистую процентную маржу?

Вместо is_multiple он также может быть назван evenly_divides или чем-то подобным. Вот что здесь проверяется.

Аналогично этому он часто используется для определения, является ли число «odd» или «even»:

def is_odd(number): return number % 2 == 1 def is_even(number): return number % 2 == 0

И в некоторых случаях он также используется для индексации массива / списка, когда требуется обтекание (циклическое) поведение, тогда вы просто делите «index» на «length of the array», чтобы достичь этого:

>>> l = [0, 1, 2]>>> length = len(l)>>> for index in range(10):… print(l[index % length])0120120120

Обратите внимание, что существует также функция для этого оператора в стандартной библиотеке operator.mod (и псевдоним operator.__mod__ ):

>>> import operator>>> operator.mod(5, 2) # equivalent to 5 % 21

Но есть также расширенное назначение %= , которое присваивает результат обратно переменной:

>>> a = 5>>> a %= 2 # identical to: a = a % 2>>> a1

% для строк: printf-форматирование строк в стиле

Для строк смысл совершенно другой, там это один из способов (на мой взгляд самый ограниченный и уродливый) для выполнения форматирования строк:

>>> «%s is %s.» % («this», «good») 'this is good'

Здесь % в строке представляет собой заполнитель, за которым следует спецификация форматирования. В этом случае я использовал %s , что означает, что он ожидает строку. Затем за строкой следует символ % , который указывает, что строка с левой стороны будет отформатирована правой стороной. В этом случае первый %s заменяется первым аргументом this , а второй %s заменяется вторым аргументом (good).

Обратите внимание, что есть гораздо лучшие (вероятно, основанные на мнении) способы форматирования строк:

>>> «{} is {}.».format(«this», «good»)'this is good.'

% в Jupyter/IPython: магических командах

Чтобы процитировать документы :

Для пользователей Jupyter: магия специфична и обеспечивается IPython kernel. Будет ли магия доступна на kernel-это решение, которое принимается разработчиком kernel на основе каждого kernel. Чтобы правильно работать, магия должна использовать синтаксический элемент, который не является допустимым в базовом языке. Например, IPython kernel использует синтаксический элемент % для магии, поскольку % не является допустимым унарным оператором в Python. В то время как синтаксический элемент имеет значение в других языках.

Это регулярно используется в блокнотах Jupyter и подобных им:

In [1]: a = 10 b = 20 %timeit a + b # one % -> line-magic 54.6 ns ± 2.7 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each) In [2]: %%timeit # two %% -> cell magic a ** b 362 ns ± 8.4 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)

Оператор % на массивах (в экосистеме NumPy / Pandas)

Оператор % по-прежнему является оператором по модулю при применении к этим массивам, но он возвращает массив, содержащий остаток каждого элемента в массиве:

>>> import numpy as np>>> a = np.arange(10)>>> aarray([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> a % 2array([0, 1, 0, 1, 0, 1, 0, 1, 0, 1])

Настройка оператора % для собственных классов

Конечно, вы можете настроить, как работают ваши собственные классы, когда к ним применяется оператор % . Как правило, вы должны использовать его только для реализации операций по модулю! Но это руководство, а не жесткое правило.

Просто приведу простой пример, который показывает, как это работает:

class MyNumber(object): def __init__(self, value): self.value = value def __mod__(self, other): print(«__mod__ called on '{!r}'».format(self)) return self.value % other def __repr__(self): return «{self.__class__.__name__}({self.value!r})».format(self=self)

Этот пример не очень полезен, он просто печатает и затем делегирует оператор сохраненному значению, но он показывает, что __mod__ вызывается, когда % применяется к экземпляру:

>>> a = MyNumber(10)>>> a % 2__mod__ called on 'MyNumber(10)'0

Обратите внимание, что он также работает для %= без явной необходимости реализации __imod__ :

>>> a = MyNumber(10)>>> a %= 2__mod__ called on 'MyNumber(10)' >>> a0

Однако вы также можете реализовать __imod__ явно для перезаписи расширенного назначения:

class MyNumber(object): def __init__(self, value): self.value = value def __mod__(self, other): print(«__mod__ called on '{!r}'».format(self)) return self.value % other def __imod__(self, other): print(«__imod__ called on '{!r}'».format(self)) self.value %= other return self def __repr__(self): return «{self.__class__.__name__}({self.value!r})».format(self=self)

Теперь %= явно перезаписывается для работы на месте:

>>> a = MyNumber(10)>>> a %= 2__imod__ called on 'MyNumber(10)' >>> aMyNumber(0)

MSeifert     07 июля 2018 в 10:27

В python 2.6 оператор » % » выполнил модуль. Я не думаю, что они изменили его в 3.0.1 году

Оператор по модулю сообщает вам остаток от деления двух чисел.

Jon W     07 июня 2009 в 06:49

Он проверяет, соответствует ли модуль деления. Например, в том случае, когда вы перебираете все числа от 2 до n и проверяете, делится ли n на любое из чисел между ними. Проще говоря, вы проверяете, является ли данное число n простым. (Подсказка: вы можете проверить до n/2).

laginimaineb     07 июня 2009 в 06:50

Оператор модуля. Остаток при делении на два числа.

например:

>>> 5 % 2 = 1 # remainder of 5 divided by 2 is 1>>> 7 % 3 = 1 # remainer of 7 divided by 3 is 1>>> 3 % 1 = 0 # because 1 divides evenly into 3

Unknown     06 ноября 2011 в 13:03

Цитата x % n ==0 это означает, что x/n и значение напоминания будут взяты в результате и сравниваться с нулем….

образец:4/5==0

4/5 памятка 1

1= = 0 (ложь)

Hemant     06 июля 2018 в 17:42

что означает знак==?

Я пытаюсь понять, что означает знак == в этой программе? int main() { int x = 2, y = 6, z = 6; x = y == z; printf(%d, x); }

C++ что означает знак процента?

Я получил этот макрос c++ и задаюсь вопросом, что они подразумевают под code%2 (знак процента)? #define SHUFFLE_STATEMENT_2(code, A, B) switch (code%2) { case 0 : A; B; break; case 1 : B; A; break;…

Что означает знак процента в параметре функции abap?

Я столкнулся с этим фрагментом abap, который мне трудно понять. call function 'com_invoke' destination pv_wrkdest exporting %instid = pv_instance %method = 'FieldCountGet' importing %return =…

Читайте также  Как рассчитать сложный процент?

Bash: манипулирование строками (знак процента)

Что означает знак процента в bash при манипулировании строками? Например, что означает ${0%/*} ?

Что означает знак & ?

В некоторой логике Omron plc у меня есть оператор move, который выглядит следующим образом ———- |@Mov(021) | | | | |&110 | | | | | |D5000 | | | |(value) | | | ———- Смущен…

Что означает знак процента в Python?

Что означает знак процента в Python? например : Часть этого кода 'j%i%im%i'%(b,c,d) ? >>> while d < len(r[0][b][c]): >>> if r[0][b][c][d] >= 0 and e == 0: >>>…

что означает & > > знак в scala?

Я новичок в scala. Я пытаюсь понять следующее. Но есть и такой знак &>> . Я не знаю, что означает этот знак. Поиск в Google тоже не помог. Что означает этот знак &>> ? Ниже…

Что означает двойной знак процента ( % % ) в JavaScript?

Чтобы дать немного контекста, я работаю с файлами шаблонов тем BigCommerce прямо сейчас, и я не понимаю некоторых синтаксисов. Они используют двойной знак процента, чтобы обернуть определенные вещи…

В SCSS, что означает символ%?

Что означает % в scss? Использование % в контексте: (источник: https://codepen.io/FWeinb/pen/GrpqB?Редакторы=1100 ) @import compass/css3; .box{ margin: 5em auto; position: relative; width: 10em;…

что означает знак % в python

что означает знак % в python? Я посмотрел его, и там было сказано, что это формат для печатной части, но это не со стороны печати, так что это не очень помогло.. в любом случае вот код: a = 5 b = 6…

Источник: https://coderoad.ru/961344/%D0%A7%D1%82%D0%BE-%D0%BE%D0%B7%D0%BD%D0%B0%D1%87%D0%B0%D0%B5%D1%82-%D0%B7%D0%BD%D0%B0%D0%BA-%D0%BF%D1%80%D0%BE%D1%86%D0%B5%D0%BD%D1%82%D0%B0-%D0%BE%D0%B7%D0%BD%D0%B0%D1%87%D0%B0%D0%B5%D1%82-%D0%B2-Python

Знак процента • ru.knowledgr.com

Что означает знак процента?
Знаком процента(%) является символ, используемый, чтобы указать на процент, число или отношение как часть 100. Связанные знаки включают permille (за тысячу) ‰ знака и permyriad (за десять тысяч) знак (также известный как пункт), которые указывают, что число разделено на одна тысяча или десять тысяч соответственно. Более высокие пропорции используют части — за примечание.

Интервал

Английские руководства по стилю предписывают написание числа и знака процента без любого пространства между. Однако Международная система Единиц и стандарта ISO 31-0 предписывает пространство между числом и знаком процента, в соответствии с общей практикой использования неломающегося пространства между численным значением и его соответствующим отделением измерения.

У

других языков есть другие правила для интервала перед знаком процента:

  • На чешском языке знак процента располагается с неломающимся пространством, если число используется в качестве существительного, тогда как никакое пространство не вставлено, если число используется в качестве прилагательного (например, “50%-е увеличение”).
  • На финском языке всегда располагается знак процента, и суффикс случая может быть присоединен к нему, используя двоеточие (например, 50%: n kasvu 'увеличение 50%').
  • На французском языке знак процента должен быть расположен с неломающимся пространством.
  • На итальянском языке никогда не располагается знак процента.
  • На испанском языке никогда не располагается знак процента.
  • В традиционном российском книгопечатании никогда не располагается знак процента. Но не то, чтобы распространенный в России сегодня.
  • На китайском языке знак процента почти никогда не располагается, вероятно потому что китаец не использует места, чтобы отделить знаки или слова вообще.
  • Согласно шведскому Языковому Совету, знаку процента должно предшествовать пространство на шведском языке.
  • На немецком языке пространство предписано регулятивным органом в национальном стандартном ШУМЕ 5008.
  • На персидском языке знак процента предшествует, а не следует за числом. На этом языке знаком разреза (/) является эквивалент для десятичной запятой на английском и других латинских языках. Например, 1 сотая часть написана как 0/01. Считается, что знак процента развился на этом языке из уплотнения 0/0 к %. Следовательно 0/01 (0.01) развился к %1 или один процент.

Использование в тексте

Часто рекомендуется, чтобы процент подписался только использоваться в столах и других местах с космическими ограничениями. В бегущем тексте это должно быть разъяснено как процент или процент (часто в газетах). Например, не «Продажи увеличились на 24% за 2006», а скорее «Продажи увеличились на 24 процента за 2006».

Развитие

До 1425 нет никаких доказательств специального символа, используемого для процента. Итальянский термин за литературный монтаж, «для ста», был использован, а также несколько различных сокращений (например, «за 100», «p 100», «p литературный монтаж», и т.д.). Примеры этого могут быть замечены в тексте арифметики 1339 года (автор неизвестен) изображенном ниже. Письмо p с его шахтой, пересеченной горизонтальной или диагональной забастовкой, традиционно выдержанной за за, por, паритет или pur в Средневековом и ренессансной палеографии.

В некоторый момент писец некоторого вида использовал сокращение «PC» с крошечной петлей или кругом (изображение окончания-o используемый в итальянском исчислении для примы, secondo, и т.д.) Это появляется на некоторых дополнительных страницах текста 1425 года, которые были, вероятно, добавлены приблизительно в 1435. Это показывают ниже (источник, Rara Arithmetica pg. 440).

«PC» с петлей в конечном счете развился в горизонтальный знак части к 1650 (см. ниже для примера в тексте 1684 года), и после того потерянный «за».

В 1925 Д. Смит написал, «solidus формируются , современно».

Unicode

Кодовые точки Unicode:

Есть также, которому заменил круги квадратный набор точек на краю.

ASCII

Кодекс ASCII для характера процента равняется 37, или шестнадцатеричных 0x25 дюймов.

В компьютерах

Названия знака процента включают знак процента (в ITU-T), модник, виноград (на жаргоне хакера), и юмористическое, «двойное, о, семь» (в INTERCAL).

В вычислении характер процента также используется для операции по модулю на языках программирования, которые получают их синтаксис из языка программирования C, который в свою очередь приобрел это использование от ранее B.

В текстовом представлении URIs %, немедленно сопровождаемый шестнадцатеричным числом с 2 цифрами, обозначает октет, определяющий (часть) характер, который не мог бы иначе быть позволен в URIs (см. кодирование процента).

В SQL знак процента — подстановочный знак в «ПОДОБНЫХ» выражениях, например принесет все отчеты, имена которых начинаются с «».

Читайте также  Как банк определяет процентную ставку?

Источник: http://ru.knowledgr.com/00970807/%D0%97%D0%BD%D0%B0%D0%BA%D0%9F%D1%80%D0%BE%D1%86%D0%B5%D0%BD%D1%82%D0%B0

Что означает знак процента в Python

Что означает знак процента?

Что означает знак процента?

Это оператор в Python, который может означать несколько вещей в зависимости от контекста. Многое из того, что следует, уже упоминалось (или намекалось) в других ответах, но я подумал, что было бы полезно предоставить более подробное резюме.

>>> 15 % 5 # 15 is 3 * 5 0 >>> 81 % 9 # 81 is 9 * 9 0 для номеров: операция Modulo / Remainder / Rest

Знак процента — это оператор в Python . Это описано как:

if n % x == 0: break

Таким образом, он дает вам остаток / отдых, который остается, если вы «разделите пол» на y. Как правило, (по крайней мере, на Python) задано число xи делитель y:

n % x == 0

Например, если вы разделите 5 на 2:

def is_multiple(number, divisor): return number % divisor == 0 … if is_multiple(n, x): break

В общем случае вы используете операцию modulo для проверки, если число равномерно разделяется другим числом, это потому, что кратные числа по модулю этого числа возвращают 0:

is_multiple

Вот как он используется в вашем примере, он не может быть простым, если он кратен другому числу (кроме самого себя и одного), вот что это делает:

evenly_divides

Если вы чувствуете, что это не очень описательно, вы можете поместить его в другую функцию с более описательным именем:def is_odd(number): return number % 2 == 1 def is_even(number): return number % 2 == 0

>>> l = [0, 1, 2] >>> length = len(l) >>> for index in range(10): … print(l[index % length]) 0 1 2 0 1 2 0 1 2 0

Вместо operator.modнего можно было бы назвать operator.__mod__или что-то подобное. Вот что тестируется здесь.

Подобно тому, что часто используется для определения, является ли число «нечетным» или «четным»:

>>> import operator >>> operator.mod(5, 2) # equivalent to 5 % 2 1

И в некоторых случаях он также используется для индексирования массива / списка, когда требуется поведение обхода (циклирования), тогда вы просто по модулю «индекса» по «длине массива», чтобы достичь этого:

%=

Обратите внимание, что для этого оператора есть также функция в стандартной библиотеке >>> a = 5 >>> a % = 2 #, идентичная: a = a% 2 >>> a 1 «rel =» nofollow noreferrer «> operator.mod ( и псевдоним operator.printf):

>>> «%s is %s.» % («this», «good») 'this is good'

Но есть также расширенное задание, %которое возвращает результат обратно переменной:

%s

%для строк: printf-style String Formatting

Для строк смысл совершенно другой, есть один из способов (по моему мнению, самый ограниченный и уродливый) для форматирования строк:

%s

Здесь thisв строке отображается заполнитель, за которым следует спецификация форматирования. В этом случае я использовал, %sчто означает, что он ожидает строку. Затем за строкой следует a, goodкоторая указывает, что строка с левой стороны будет отформатирована правой стороной. В этом случае первый заменяется первым аргументом, а второй заменяется вторым аргументом ( ).>>> «{} is {}.».format(«this», «good») 'this is good.'this%%

Обратите внимание, что существуют намного лучшие (вероятно, основанные на мнениях) способы форматирования строк:

%

In [1]: a = 10 b = 20 %timeit a + b # one % -> line-magic 54.6 ns % 2.7 ns per loop (mean % std. dev. of 7 runs, 10000000 loops each) In [2]: %%timeit # two %% -> cell magic a ** b 362 ns >>> import numpy as np >>> a = np.arange(10) >>> a array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> a % 2 array([0, 1, 0, 1, 0, 1, 0, 1, 0, 1]) 8.4 ns per loop (mean % std. dev. of 7 runs, 1000000 loops each) в Jupyter / IPython: магические команды

Чтобы процитировать документы :

Для пользователей Jupyter: Magics специфичны и предоставляются ядром IPython. Независимо от того, доступны ли магии в ядре, это решение, принимаемое разработчиком ядра для каждого ядра. Чтобы правильно работать, Magics должен использовать элемент синтаксиса, который недействителен в базовом языке.

Например, ядро ??IPython использует %элемент синтаксиса для магии, поскольку это не является допустимым унарным оператором в Python. Хотя синтаксический элемент имеет смысл на других языках.class MyNumber(object): def __init__(self, value): self.value = value def __mod__(self, other): print(«__mod__ called on '{!r}'».format(self)) return self.

value % other def __repr__(self): return «{self.__class__.__name__}({self.value!r})».format(self=self)

Это регулярно используется в ноутбуках Jupyter и аналогичных:

__mod__

%Оператор на массивы (в экосистеме NumPy / панды)

Оператор по — прежнему оператор по модулю при нанесении на эти массивы, но он возвращает массив , содержащий остальную часть каждого элемента в массиве:>>> a = MyNumber(10) >>> a % 2 __mod__ called on 'MyNumber(10)' 0

%=

Настройка __imod__оператора для ваших собственных классов

Конечно, вы можете настроить, как работают ваши собственные классы, когда к %ним применяется оператор. Как правило, вы должны использовать его только для реализации модульных операций! Но это руководство, а не жесткое правило.

Просто чтобы привести простой пример, который показывает, как он работает:

>>> a = MyNumber(10) >>> a %= 2 __mod__ called on 'MyNumber(10)' >>> a 0

Этот пример не очень полезен, он просто печатает, а затем делегирует оператор сохраненному значению, но он показывает, что __mod__вызывается при %применении к экземпляру:

__imod__

Обратите внимание, что он также работает без явной необходимости реализовать :class MyNumber(object): def __init__(self, value): self.value = value def __mod__(self, other): print(«__mod__ called on '{!r}'».format(self)) return self.value % other def __imod__(self, other): print(«__imod__ called on '{!r}'».format(self)) self.value %= other return self def __repr__(self): return «{self.__class__.__name__}({self.value!r})».format(self=self)%=

>>> a = MyNumber(10) >>> a %= 2 __imod__ called on 'MyNumber(10)' >>> a MyNumber(0)

Однако вы также можете A±явно реализовать перезапись расширенного назначения:

Теперь A±он явно перезаписан для работы на месте:

Источник: https://MoreDez.ru/q/51215425/