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

Обновлено: 05.07.2024

Я хочу создать последовательность чисел в Java, как это :

Я хочу создать 1000 чисел в последовательности.

Как я могу это сделать?

Я пытался сделать вот так :

Он не работает, он распечатывает:

Мне нужно создать короткий уникальный ID, который представляет собой последовательность чисел random в python. Поэтому мне нужно выделить короткую последовательность пользователю, а также сохранить ее в текстовом файле Может ли кто-нибудь помочь мне в этом и привести пример??

Как эффективно сгенерировать следующую последовательность чисел в R? 4, 5, 10, 11, 16, 17, . 178, 179

Как общее замечание, в то время как str = str + someString; будет работать, внутри цикла он может быстро выйти из-под контроля. Попробуйте сделать это с 10000 итерациями, и вы увидите (потребляется большое количество RAM & CPU).

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

Вам нужно добавить его в строку. Я предлагаю использовать StringBuilder.

То, что вы делаете, это перезаписываете строку каждый раз

Чтобы ваш код работал, измените seq=String.format("%d",i); на seq+=String.format("%d",i); .

Однако лучший способ-использовать StringBuilder , как это:

EDIT: На самом деле это не генерирует строку длиной 1000 , так как она добавляет следующее: 012345678910. (> 10-это два или три числа вместо одного).

Поэтому вместо этого попробуйте что-то подобное, используя класс Random для случайного числа 0-9 :

Если вы хотите создать поток длиной 1000 с каждой случайной цифрой, попробуйте функцию Math.random.

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

Похожие вопросы:

Как создать последовательность, начинающуюся с символа, а затем с чисел в R Я хочу создать последовательность, подобную следующей: y1998 y1999 y2000 до y2011

В этой части курса мы обсуждаем математику в JavaScript — как мы можем использовать operators (en-US) и другие функции, чтобы успешно манипулировать числами для выполнения наших задач.

Необходимые условия: Базовая компьютерная грамотность, базовое понимание HTML и CSS, понимание того, что такое JavaScript.
Цель: Ознакомление с основами математики в JavaScript.

Все любят математику

Хорошо, может быть, не все. Некоторые из нас любят математику, некоторые из нас ненавидели математику с тех пор, как мы изучали таблицу умножения в школе, а некоторые из нас находятся где-то между ними. Но никто из нас не может отрицать, что математика является фундаментальной частью жизни, и мы не можем обойтись без неё. Это особенно актуально, когда мы учимся программировать на JavaScript (или на любом другом языке, если на то пошло) — большая часть того, что мы делаем, опирается на обработку числовых данных, вычисление новых значений и т.д. Так что не удивительно, что JavaScript имеет полнофункциональный набор математических функций.

В этой статье обсуждаются только основные разделы, которые вам нужно знать сейчас.

Типы чисел

В программировании даже скромная система десятичных чисел, которую мы все так хорошо знаем, сложнее, чем вы думаете. Мы используем разные термины для описания различных типов десятичных чисел. Например:

  • Целые — это целые числа, такие как: 10, 400, или -5.
  • С плавающей точкой(или: с плавающей запятой) — имеют целую и дробную части, например: 12.5 или 56.7786543.
  • Doubles — тип чисел с плавающей точкой, которые имеют большую точность, чем стандартные числа с плавающей точкой (что означает, что они точны для большего числа десятичных знаков).

У нас даже есть разные типы числовых систем:

Прежде чем взорвётся ваш мозг, остановитесь прямо здесь и сейчас!

Во-первых, мы просто будем придерживаться десятичных чисел на протяжении всего курса; вы редко когда будете сталкиваться с необходимостью думать в других числовых системах, если вообще когда-либо с ней столкнётесь.

Во-вторых, в отличие от некоторых других языков программирования, JavaScript имеет только один тип данных для чисел, как вы догадались это Number . Это означает, независимо от типа чисел, с которыми вы работаете в JavaScript, обрабатывать вы их будете точно так же.

Для меня всё — числа

Давайте быстро поиграем с некоторыми числами, чтобы снова познакомиться с основным синтаксисом, который нам нужен. Введите команды, перечисленные ниже, в вашу консоль (developer tools JavaScript console), или используйте простую встроенную консоль.

    Прежде всего, давайте объявим пару переменных и инициализируем их целым числом и числом с плавающей точкой, соответственно, затем введите имена переменных обратно, чтобы проверить, что все в порядке:

Арифметические операторы

Арифметические операторы — это основные операторы, которые мы используем для различных математических операций, например таких, как сложение или вычитание:

Возвращает значение остатка при делении первого числа на второе. Результат будет иметь тот же знак, что и первое число.

11 % 3 = 2 (поскольку число 3 вмещается три раза, остатком будет число 2)

Примечание: Иногда числа участвующие в математических операциях называют операндами ( operands (en-US) ).

Нам, вероятно, не нужно учить вас базовым математическим операциям, но мы хотели бы проверить ваше понимание синтаксиса. Попробуйте ввести приведённые ниже примеры в свою консоль (developer tools JavaScript console), или используйте встроенную консоль, с которой вы уже знакомы, чтобы ознакомиться с синтаксисом.

    Для начала попробуйте ввести простые примеры, такие как:

Некоторые примеры выше могут дать вам не тот результат, которого вы ожидали; приведённый ниже раздел может дать ответ на вопрос о том, почему.

Приоритет операторов

Давайте взглянем на последний пример сверху. Предположим, что num2 содержит значение 50 и num1 содержит значение 10 (как и было обозначено выше):

Будучи человеком, вы, вероятно, прочитаете это как "50 плюс 10 равно 60", затем "8 плюс 2 равно 10", и, наконец, "60 делить на 10 равно 6".

Но браузер видит это по-другому: "10 делить на 8 равно 1.25", затем "50 плюс 1.25 плюс 2 равно 53.25".

Это происходит из-за приоритета операторов - некоторые операторы будут применены перед другими в процесс вычисления суммы (в программировании её называют выражением). Приоритет операторов в JavaScript ничем не отличается от приоритета арифметических операций, который вы изучали в школе - умножение и деление всегда выполняются первыми, затем сложение и вычитание (сумма всегда вычисляется слева направо).

Если вы хотите переопределить порядок выполнения операторов, вы можете окружить парными скобками часть выражения, которая должна быть выполнена первой. Для получения результата 6 вам следует сделать следующее:

Результат этого выражения равен 6.

Примечание: полный список операторов JavaScript и приоритетов их выполнения можно найти по этой ссылке: Expressions and operators.

Операторы инкремента и декремента

Иногда вам захочется повторно добавить или вычесть единцу к/из значению числовой переменной. Это можно сделать с помощью оператора инкремента ( ++ ) и декремента ( -- ). Мы использовали ++ в нашей игре "Угадай число" в статье первое погружение в JavaScript, где мы добавляли 1 к переменной guessCount , в которой хранилось значение количества попыток пользователя после каждого хода.

Замечание: инкремент и декремент часто используются в циклах, о которых вы узнаете позже. Например, если вы захотите пройтись по списку цен и добавить к каждой налог с продаж, вам придётся в цикле обойти каждую цену и провести необходимые вычисления для учёта налога. Инкремент будет использован для перехода на новую ячейку списка при необходимости. У нас есть несложный пример реализации такого списка - попробуйте и взгляните на код чтобы посмотреть, сможете ли вы найти инкременты! Мы взглянем на циклы поближе позже по ходу курса.

Давайте попробуем сыграть с этим в вашей консоли. Для начала заметим, что вы не можете использовать инкремент/декремент непосредственно к числу, что может показаться странным. Дело в том, что мы присваиваем к переменной новое обновлённое число, а не просто вычисляем значение. Следующий пример приведёт к ошибке:

Таким образом, вы можете применить инкремент только к существующим переменным:

Так, вторая странность! Если вы сделаете это, вы получите значение 4 - браузер возвращает текущее число, после чего применяет к нему оператор инкремента. Вы можете удостовериться в том, что инкремент был применён, узнав значение переменной ещё раз:

То же самое для -- : попробуйте пример ниже

Замечание: вы можете заставить делать это в другом порядке - применить инкремент/декремент и только потом вернуть значение. Для этого необходимо записать оператор слева от переменной, а не справа. Попробуйте пример сверху ещё раз, но в этот раз используйте ++num1 и --num2 .

Операторы присваивания

Операторы присваивания - операторы, которые присваивают значение переменным. Мы уже много раз использовали самый простой из них, = , он просто приравнивает значение переменной слева к значению справа:

Однако есть ещё несколько сложных конструкций, которые позволяют делать ваш код более простым и аккуратным. Наиболее часто используемые перечислены ниже:

Попробуйте использовать такие конструкции, что понять, как они работают. Сможете ли вы определить значение до того, как напишите вторую строку?

Заметьте, что значение справа может быть как числом (константой), так и переменной, например:

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

Активное обучение: меняем размеры коробки

В этом упражнении вы будете пользоваться числами и операторами для работы с размерами коробки. Коробка рисуется с помощью API браузера, которое называется Canvas API. Вам не следует беспокоиться о том, как это работает - просто сосредоточьтесь на математике. Ширина и высота коробки (в пикселях) определяются переменными x и y , которые изначально равны 50.

В коде сверху, который вы можете изменять, под комментарием есть две строчки, с помощью которых вы можете увеличивать/уменьшать размеры коробки. Мы хотим, чтобы вы выполнили несколько заданий:

  • Поменяйте строчку с размером x так, чтобы коробка была шириной 50px, причём 50 должно быть вычислено с помощью чисел 43 и 7 и арифметического оператора.
  • Поменяйте строчку с размером y так, чтобы коробка была высотой 75px, причём 75 должно быть вычислено с помощью чисел 25 и 3 и арифметического оператора.
  • Поменяйте строчку с размером y так, чтобы коробка была высотой 250, при этом 250 вычислено с помощью двух чисел и оператором взятия остатка (модуль).
  • Поменяйте строчку с размером y так, чтобы коробка была высотой 150px, причём 150 вычислено с помощью трёх чисел и операторов вычитания и деления.
  • Поменяйте строчку с размером x так, чтобы коробка была шириной 200px, при этом 200 вычислено с помощью числа 4 и оператора присваивания.
  • Поменяйте строчку с размером y так, чтобы коробка была высотой 200px, причём 200 вычислено с помощью чисел 50 и 3 и операторов умножения и присваивания сложения.

Операторы сравнения

Иногда нам может понадобиться проверить какое-либо условие, а затем поступить в зависимости от результата - для этого мы используем операторы сравнения.

Оператор Имя Назначение Пример
=== Строгое равенство Проверяет левое и правое значения на идентичность 5 === 2 + 4
!== Строгое неравенство Проверяет левое и правое значения на неидентичность 5 !== 2 + 3
Меньше Проверяет, меньше ли левое значение правого 10
> Больше Проверяет, больше ли левое значение правого 10 > 20
3
>= Больше или равно Проверят, больше ли левое значение левого (или равно ему) 5 >= 4

Примечание: вы можете заметить, что некоторые люди используют == и != в их программах для сравнения на равенство и неравенство — это валидные JavaScript-операторы, но они отличаются от === / !== — первая пара проверяет на равенство/неравенство значений, не рассматривая их типы. Вторая пара - строгая версия первой, которая проверяет типы операндов. При использовании строгой версии выявляется больше ошибок, поэтому мы рекомендуем использовать именно её.

Если вы попробуете использовать эти операторы в консоли, вы увидите, что все они возвращают значения true / false — о типе данных boolean мы писали в прошлой статье. С их помощью мы можем принимать решения в нашей программе, например:

Мы взглянем на то, как реализовать такую логику после знакомства с условными выражениями в следующей статье. Сейчас мы рассмотрим небольшой пример:

Мы использовали оператор равенства внутри функции updateBtn() . В этом случае мы не проверяем пару математических выражений на равенство значений — мы просто смотрим, является ли текст на кнопке определённой строкой — что по сути является тем же самым. Если кнопка при нажатии содержит "Start machine", мы меняем содержимое метки на "Stop machine" и обновляем метку. Если же текст кнопки — "Stop machine", при нажатии мы возвращаем все обратно.

Примечание: Такой элемент управления, который переключается между двумя состояниями, обычно называется тумблером. Он переключается между одним состоянием и другим: свет включён, свет выключен и т. д.

Итого

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

В следующей статье мы изучим текст и то, как мы работаем с ним в JavaScript.

Примечание: если вам хочется узнать подробнее о том, как математика реализуется в JavaScript, вы можете посмотреть главный раздел JavaScript MDN. Статьи Числа и даты и Выражения и операторы - хороший вариант для начала.

В этом цикле материалов, мы с вами на практических примерах пройдемся по циклам Python. Решим несколько практических задач, и узнаем, как на практике применять циклы.

Что бы хорошо разобраться в приведенных ниже примерах, вам необходимо знать следующие темы:

Python четность числа

И так, для нахождения четности числа, мы будем действовать следующим образом. Делим нужное нам число на 2 , с использованием оператора % , который вычисляет остаток. В случае если остаток числа равен нулю, то число четное.

Что происходит в данном коде? В сам начале, мы просим пользователя ввести число, затем делим это число, и смотри на остаток, если остаток равен нулю, то число четное, если не равен нулю, то число нечетное.

Проверка на високосный год

В этом примере мы напишем программу которая проверяет является ли тот или иной год високосным. Для решения этой задачи мы будем использовать вложенные условия if…else . Что бы хорошо понять этот пример, нам необходимо знать следующие темы.

Вычисление високосного года происходит следующим образом:

Високосный год делится без остатка на 4, за исключением столетий (года заканчивающиеся на 00). Столетние года, мы будем делить на 400, если делится без остатка, то этот год является високосным. При делении как и в предыдущем примере, мы будем использовать оператор %. Пример:

Чтобы создать переменное количество переменных в Python, либо используйте словарь или именуемый. Проблема: Как вы можете хранить переменное количество переменных в вашем Python? Пример: подумайте, что есть требование, в котором вы должны хранить спецификации продукта в одной переменной, которая включает в себя переменную … Как создать переменное количество переменных? Прочитайте больше “

Чтобы создать переменное количество переменных в Python, либо используйте Словарь или namedtuple Отказ

Проблема: Как вы можете хранить переменное количество переменных в вашем коде Python?

Пример: Подумайте, что есть требование, в котором вы должны хранить спецификации продукта в одной переменную, которая включает в себя переменное количество переменных, которые используются для хранения различных параметров продукта. Например, мы хотим хранить параметры, такие как Бренд Имя , Модель, и Год изготовления Внутри другая переменная по имени Продукт Отказ Диаграмма ниже объясняет проблему подробно.

Это просто пример сценария, который должен использоваться для демонстрации решений нашего заявления о проблеме.

Метод 1: с использованием словарей Python

Самый простой способ выполнить нашу задачу – использовать словари Python. Словарь – это коллекция, которая позволяет хранить данные в виде пар клавиши и значения, в которых ключи используются для представления переменных, когда значение представляет значения, которые будут сохранены в переменных. Чтобы лучше понять концепцию словарей, я настоятельно рекомендую вам взглянуть на это розницу.

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

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

Это может выглядеть как сложный сценарий, однако с использованием словарей Python даже такие ситуации могут быть обработаны с легкостью. Приведенная ниже программа демонстрирует, как вы можете иметь дело с такими ситуациями:

Попробуйте сами в интерактивной оболочке кода:

Упражнение : Запустите код. Выходной матч?

Способ 2: Использование Getattr ()

Другим способом хранения переменного числа переменных можно выполнить с помощью встроенного метода, называемыми getattr () Отказ getattr () Функция используется для возврата значения указанного атрибут объекта. Поэтому вы можете хранить значения в переменных и инкапсулировать их в Класс и затем извлечь желаемое значение, используя getattr () функция.

Следующий код демонстрирует вышеуказанную концепцию:

Метод 3: Использование NamedTuple

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

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

Способ 4: Использование произвольных аргументов (* args)

В Python мы можем пройти переменное количество аргументов функции, используя специальный символ * args Отказ Поэтому мы можем использовать * Символ Перед именем параметра в определении функции для передачи переменного числа аргументов функции.

Давайте посмотрим на следующий код, чтобы понять использование * args :

Вывод

Таким образом, из решений, обсуждаемых выше, мы можем смело сказать, что Python предлагает множество вариантов для создания и хранения значений в переменном количестве переменных. Я надеюсь, что вы нашли эту статью полезную, и она поможет вам с легкостью создавать переменное количество переменных в Python.

Оставайтесь настроиться на более интересные вещи в будущем!

Куда пойти отсюда?

Достаточно теории, давайте познакомимся!

Чтобы стать успешным в кодировке, вам нужно выйти туда и решать реальные проблемы для реальных людей. Вот как вы можете легко стать шестифункциональным тренером. И вот как вы польские навыки, которые вам действительно нужны на практике. В конце концов, что такое использование теории обучения, что никто никогда не нуждается?

Практические проекты – это то, как вы обостряете вашу пилу в кодировке!

Вы хотите стать мастером кода, сосредоточившись на практических кодовых проектах, которые фактически зарабатывают вам деньги и решают проблемы для людей?

Затем станьте питоном независимым разработчиком! Это лучший способ приближения к задаче улучшения ваших навыков Python – даже если вы являетесь полным новичком.

Я профессиональный Python Blogger и Content Creator. Я опубликовал многочисленные статьи и создал курсы в течение определенного периода времени. В настоящее время я работаю полный рабочий день, и у меня есть опыт в областях, таких как Python, AWS, DevOps и Networking.

Читайте также: