Введите строку символов с клавиатуры, если ее длина меньше 6 символов, отобразится сообщение
Обновлено: 21.11.2024
Строка в C — это не что иное, как набор символов в линейной последовательности. «C» всегда обрабатывает строку как отдельные данные, даже если она содержит пробелы. Один символ определяется с использованием представления в одинарных кавычках. Строка представляется с помощью двойных кавычек.
«C» предоставляет стандартную библиотеку, содержащую множество функций, которые можно использовать для простого выполнения сложных операций со строками в C.
В этом уроке вы узнаете-
Как объявить строку в C?
Строка C представляет собой простой массив с типом данных char. Язык C не поддерживает напрямую строку как тип данных. Следовательно, чтобы отобразить строку в C, вам нужно использовать массив символов.
Классическое объявление строк можно сделать следующим образом:
Размер массива должен быть определен при объявлении строковой переменной C, потому что он используется для расчета того, сколько символов будет храниться внутри строковой переменной в C. Вот некоторые допустимые примеры объявления строки, р>
Приведенный выше пример представляет строковые переменные с размером массива 15. Это означает, что данный массив строк C может содержать не более 15 символов. Индексация массива начинается с 0, поэтому он будет хранить символы с позиции 0-14. Компилятор C автоматически добавляет символ NULL ‘\0’ в созданный массив символов.
Как инициализировать строку в C?
Давайте изучим инициализацию строк в C. Следующий пример демонстрирует инициализацию строк в C,
В строке 3 символ NULL должен быть добавлен явно, а символы заключены в одинарные кавычки.
«C» также позволяет нам инициализировать строковую переменную, не определяя размер массива символов. Это можно сделать следующим образом,
Имя Strings в C действует как указатель, потому что это в основном массив.
Ввод строки C: программа C для чтения строки
При написании интерактивных программ, которые запрашивают ввод данных у пользователя, C предоставляет функции scanf(), gets() и fgets() для поиска строки текста, введенного пользователем.
Когда мы используем scanf() для чтения, мы используем спецификатор формата «%s» без использования «&» для доступа к адресу переменной, поскольку имя массива действует как указатель.
Например:
Вывод:
Проблема с функцией scanf заключается в том, что она никогда не читает целые строки в C. Она остановит процесс чтения, как только появится пробел, перевод страницы, вертикальная табуляция, новая строка или возврат каретки. Предположим, что мы даем ввод как «Учебники Guru99», тогда функция scanf никогда не прочитает всю строку, так как между двумя именами встречается пробел. Функция scanf будет читать только Guru99.
Чтобы прочитать строку, содержащую пробелы, мы используем функцию gets(). Gets игнорирует пробелы. Он прекращает чтение, когда достигается новая строка (нажата клавиша Enter).
Например:
Вывод:
Другой более безопасной альтернативой gets() является функция fgets(), которая считывает заданное количество символов.
Например:
Вывод:
Аргументы fgets():
- имя строки,
- количество символов для чтения,
- stdin означает чтение со стандартного ввода, которым является клавиатура.
Вывод строки C: программа на языке C для печати строки
Стандартная функция printf используется для печати или отображения строк в C на устройстве вывода. Используемый спецификатор формата: %s
Пример
Вывод строки осуществляется с помощью функций fputs() и printf().
функция fputs()
Функции fputs() требуется имя строки и указатель на то место, где вы хотите отобразить текст. Мы используем stdout, который относится к стандартному выводу для печати на экране.
Например:
Вывод:
помещает функцию
Функция puts используется для печати строки на языке C на устройстве вывода и перемещения курсора обратно в первую позицию. Функцию put можно использовать следующим образом:
Синтаксис этой функции сравнительно прост, чем у других функций.
Библиотека строк
Стандартная библиотека C предоставляет различные функции для работы со строками в программе. Эти функции также называются обработчиками строк. Все эти обработчики находятся внутри заголовочного файла.
Функция | Назначение |
---|---|
strlen() | Эта функция используется для нахождения длины строки. Она возвращает количество символов в строке, исключая символ NULL. |
strcat(str1, str2) | Эта функция используется для объединения двух строк. вместе, чтобы сформировать единую строку. Он добавляет или объединяет строку str2 в конец строки str1 и возвращает указатель на строку str1. |
strcmp(str1, str2) | Эта функция используется для сравнения двух строк друг с другом. Он возвращает 0, если str1 равен str2, меньше 0, если str1 str2. |
Давайте рассмотрим программу ниже, которая демонстрирует функции библиотеки строк:
Вывод:
- strncmp(str1, str2, n): возвращает 0, если первые n символов строки str1 равны первым n символам строки str2, меньше 0, если строка str1 str2.
- strncpy(str1, str2, n) Эта функция используется для копирования строки из другой строки. Копирует первые n символов строки str2 в строку str1.
- strchr(str1, c): возвращает указатель на первое вхождение char c в str1 или NULL, если символ не найден.
- strrchr(str1, c): ищет строку str1 в обратном порядке и возвращает указатель на позицию char c в строке str1 или NULL, если символ не найден.
- strstr(str1, str2): возвращает указатель на первое вхождение строки str2 в строку str1 или NULL, если строка str2 не найдена.
- strncat(str1, str2, n) Добавляет (объединяет) первые n символов строки str2 в конец строки str1 и возвращает указатель на строку str1.
- strlwr(): преобразовать строку в нижний регистр
- strupr(): для преобразования строки в верхний регистр
- strrev() : перевернуть строку
Преобразование строки в число
В программировании на C мы можем преобразовать строку числовых символов в числовое значение, чтобы предотвратить ошибку во время выполнения. Библиотека stdio.h содержит следующие функции для преобразования строки в число:
Смотреть сейчас Это руководство содержит связанный с ним видеокурс, созданный командой Real Python. Посмотрите его вместе с письменным учебным пособием, чтобы углубить свое понимание: Чтение входных данных и Написание выходных данных в Python
Чтобы программа была полезной, она обычно должна взаимодействовать с внешним миром, получая входные данные от пользователя и отображая данные о результатах обратно пользователю. В этом руководстве вы узнаете о вводе и выводе Python.
Ввод может поступать от пользователя непосредственно через клавиатуру или из внешних источников, таких как файлы или базы данных. Выходные данные могут отображаться непосредственно на консоли или в среде IDE, на экране через графический интерфейс пользователя (GUI) или снова во внешнем источнике.
В предыдущем руководстве этой вводной серии вы:
- Сравнение различных парадигм, используемых языками программирования для реализации определенной итерации.
- Узнал об итераторах и итераторах — двух концепциях, лежащих в основе определенной итерации в Python.
- Связал все вместе, чтобы узнать о циклах for в Python
К концу этого руководства вы будете знать, как:
- Принимать пользовательский ввод с клавиатуры с помощью встроенной функции input()
- Отображение вывода на консоль с помощью встроенной функции print()
- Форматировать строковые данные с помощью f-строк Python
Без дальнейших церемоний, давайте приступим!
Бесплатный бонус: нажмите здесь, чтобы получить памятку по Python и изучить основы Python 3, такие как работа с типами данных, словарями, списками и функциями Python.
Чтение ввода с клавиатуры
Программы часто должны получать данные от пользователя, обычно путем ввода с клавиатуры. Один из способов сделать это в Python — использовать input() :
Функция input() приостанавливает выполнение программы, чтобы пользователь мог ввести строку ввода с клавиатуры. Как только пользователь нажимает клавишу Enter, все введенные символы считываются и возвращаются в виде строки:
Обратите внимание, что возвращаемая строка не включает новую строку, сгенерированную, когда пользователь нажимает клавишу Enter.
Если вы включите необязательный
аргумент, затем функция input() отображает его как подсказку, чтобы пользователь знал, что вводить:
input() всегда возвращает строку. Если вам нужен числовой тип, вам нужно преобразовать строку в соответствующий тип с помощью встроенной функции int() , float() или complex() :
В приведенном выше примере выражение число + 100 в строке 3 недопустимо, поскольку число является строкой, а 100 — целым числом. Чтобы избежать этой ошибки, строка 8 преобразовывает число в целое число сразу после сбора пользовательского ввода. Таким образом, к расчетному числу + 100 в строке 10 нужно добавить два целых числа. Благодаря этому вызов print() выполняется успешно.
Примечание к версии Python. Если вы обнаружите, что работаете с кодом Python 2.x, вы можете столкнуться с небольшой разницей в функциях ввода между версиями Python 2 и 3.
raw_input() в Python 2 считывает ввод с клавиатуры и возвращает его. raw_input() в Python 2 ведет себя точно так же, как input() в Python 3, как описано выше.
Но в Python 2 также есть функция input() . В Python 2 функция input() считывает ввод с клавиатуры, анализирует и оценивает его как выражение Python и возвращает результирующее значение.
В Python 3 нет ни одной функции, которая делала бы то же самое, что и input() в Python 2.Вы можете имитировать эффект в Python 3 с помощью выражения eval(input()) . Однако это представляет собой угрозу безопасности, поскольку позволяет пользователям запускать произвольный, потенциально вредоносный код.
Для получения дополнительной информации о eval() и связанных с ним потенциальных угрозах безопасности ознакомьтесь с Python eval(): динамическое вычисление выражений.
С помощью input() вы можете собирать данные от своих пользователей. Но что, если вы хотите показать им какие-либо результаты, рассчитанные вашей программой? Далее вы узнаете, как отображать выходные данные для пользователей в консоли.
Запись вывода в консоль
Помимо получения данных от пользователя, программа также обычно должна предоставлять данные обратно пользователю. Вы можете отображать данные программы на консоли в Python с помощью print() .
Чтобы отобразить объекты на консоли, передайте их в виде списка аргументов, разделенных запятыми, функции print() .
print( , . )
Отображает строковое представление каждого из них на консоль. (Документация)
По умолчанию print() разделяет объекты одним пробелом и добавляет новую строку в конец вывода:
Вы можете указать любой тип объекта в качестве аргумента для print() . Если объект не является строкой, функция print() преобразует его в соответствующее строковое представление перед отображением:
Как видите, даже сложные типы, такие как списки, словари и функции, могут отображаться в консоли с помощью print() .
Печать с расширенными функциями
print() принимает несколько дополнительных аргументов, обеспечивающих скромный контроль над форматом вывода. Каждый из них представляет собой особый тип аргумента, называемый аргументом ключевого слова. Позже в этой вводной серии вы встретите руководство по функциям и передаче параметров, чтобы вы могли больше узнать об аргументах ключевых слов.
А пока вот что вам нужно знать:
- Аргументы ключевых слов имеют форму = .
- Любые ключевые аргументы, передаваемые функции print(), должны стоять в конце после списка отображаемых объектов.
В следующих разделах вы увидите, как эти ключевые аргументы влияют на вывод консоли, создаваемый функцией print() .
Разделение печатаемых значений
Добавление ключевого аргумента sep= приводит к тому, что Python разделяет объекты с помощью одинарного пробела, а не по умолчанию:
Чтобы сжать объекты вместе без пробела между ними, укажите пустую строку ("") в качестве разделителя:
Вы можете использовать ключевое слово sep, чтобы указать любую произвольную строку в качестве разделителя.
Управление символом новой строки
Аргумент ключевого слова end= приводит к завершению вывода вместо символа новой строки по умолчанию:
Например, если вы отображаете значения в цикле, вы можете использовать end, чтобы значения отображались в одной строке, а не в отдельных строках:
Вы можете использовать ключевое слово end, чтобы указать любую строку в качестве ограничителя вывода.
Отправка вывода в поток
print() принимает два дополнительных аргумента ключевого слова, оба из которых влияют на то, как функция обрабатывает поток вывода:
file= : по умолчанию print() отправляет свой вывод в поток по умолчанию с именем sys.stdout , который обычно эквивалентен консоли. Аргумент file= заставляет print() отправлять вывод в альтернативный поток, указанный вместо этого.
flush=True: обычно print() буферизует свой вывод и периодически записывает в выходной поток. flush=True указывает, что Python принудительно очищает поток вывода при каждом вызове функции print() .
Эти два аргумента ключевых слов представлены здесь для полноты картины. На этом этапе обучения вам, вероятно, не нужно слишком беспокоиться о потоках вывода.
Использование форматированных строк
Хотя вы можете углубиться в изучение функции Python print(), форматирование вывода консоли, которое она предоставляет, в лучшем случае находится в зачаточном состоянии. Вы можете выбрать способ разделения печатных объектов и указать, что будет в конце печатной строки. Вот и все.
Во многих случаях вам потребуется более точный контроль над внешним видом данных, предназначенных для отображения. Python предоставляет несколько способов форматирования выходных строковых данных. В этом разделе вы увидите пример использования f-строк Python для форматирования строк.
Примечание. Синтаксис f-строки — это один из современных способов форматирования строк. Для углубленного обсуждения вы можете ознакомиться с этими руководствами:
Вы также получите более подробный обзор двух подходов к форматированию строк, f-strings и str.format() , в руководстве по выводу форматированных строк в Python, которое следует за этим руководством в этой вводной серии. р>
В этом разделе вы будете использовать f-строки для форматирования вывода. Предположим, вы написали код, запрашивающий у пользователя имя и возраст:
Вы успешно собрали данные от своего пользователя, и вы также можете отобразить их на их консоли. Чтобы создать красиво отформатированное выходное сообщение, вы можете использовать синтаксис f-строки:
f-строки позволяют заключать имена переменных в фигурные скобки ( <> ), чтобы вставлять их значения в создаваемую строку. Все, что вам нужно сделать, это добавить букву f или F в начало вашей строки.
Далее предположим, что вы хотите сообщить пользователю, сколько ему будет лет через 50 лет. F-строки Python позволяют вам сделать это без особых накладных расходов! Вы можете добавить любое выражение Python между фигурными скобками, и Python сначала вычислит его значение, а затем вставит его в вашу f-строку:
Вы добавили 50 к значению возраста, которое вы получили от пользователя и преобразовали в целое число с помощью int() ранее. Весь расчет происходил внутри второй пары фигурных скобок в вашей f-строке. Довольно круто!
Примечание. Если вы хотите узнать больше об использовании этого удобного метода форматирования строк, вы можете углубиться в руководство по f-строкам Python 3.
F-строки Python, возможно, являются наиболее удобным способом форматирования строк в Python. Если вы хотите учиться только одним способом, лучше всего придерживаться f-строк Python. Однако этот синтаксис доступен только начиная с Python 3.6, поэтому, если вам нужно работать с более старыми версиями Python, вам придется использовать другой синтаксис, например, метод str.format() или строковый оператор по модулю.
Ввод и вывод Python: заключение
В этом руководстве вы узнали о вводе и выводе в Python и о том, как ваша программа Python может взаимодействовать с пользователем. Вы также изучили некоторые аргументы, с которыми можно работать, чтобы добавить сообщение в приглашение ввода или настроить, как Python отображает вывод для ваших пользователей.
Вы научились:
- Принимать пользовательский ввод с клавиатуры с помощью встроенной функции input()
- Отображение вывода на консоль с помощью встроенной функции print()
- Форматировать строковые данные с помощью f-строк Python
В следующем учебном пособии этой вводной серии вы узнаете о еще одном методе форматирования строк и глубже погрузитесь в использование f-строк.
Смотреть сейчас Это руководство содержит связанный с ним видеокурс, созданный командой Real Python. Посмотрите его вместе с письменным учебным пособием, чтобы углубить свое понимание: Чтение входных данных и Написание выходных данных в Python
Раз в несколько дней получайте короткие и интересные трюки с Python. Никакого спама никогда. Отписаться в любое время. Куратор: команда Real Python.
О Джоне Стурце
Джон — заядлый питонист и член учебной группы Real Python.
Метод substring() возвращает часть строки между начальным и конечным индексами или до конца строки.
Попробуйте
Синтаксис
Параметры
Индекс первого символа для включения в возвращаемую подстроку.
Индекс первого символа, исключаемого из возвращаемой подстроки.
Возвращаемое значение
Новая строка, содержащая указанную часть данной строки.
Описание
substring() извлекает символы от indexStart до но не включая indexEnd . В частности:
- Если indexEnd опущен, функция substring() извлекает символы в конец строки.
- Если indexStart равен indexEnd , substring() возвращает пустую строку.
- Если indexStart больше, чем indexEnd , то эффект substring() будет таким же, как если бы два аргумента были переставлены местами; См. пример ниже.
Любое значение аргумента меньше 0 или больше stringName.length обрабатывается так, как если бы оно было равно 0 и stringName.length соответственно.
Любое значение аргумента, равное NaN, рассматривается как 0 .
Примеры
Использование подстроки()
В следующем примере функция substring() используется для отображения символов из строки "Mozilla":
Использование substring() со свойством длины
В следующем примере используется метод substring() и свойство length для извлечения последних символов определенной строки. Этот метод может быть легче запомнить, учитывая, что вам не нужно знать начальный и конечный индексы, как в приведенных выше примерах.
Разница между substring() и substr()
Существует небольшая разница между методами substring() и substr(), поэтому будьте осторожны, чтобы не перепутать их.
Аргументы substring() представляют начальный и конечный индексы, а аргументы substr() представляют начальный индекс и количество символов, которые нужно включить в возвращаемую строку.
Кроме того, функция substr() считается устаревшей функцией ECMAScript и может быть удалена из будущих версий, поэтому по возможности лучше избегать ее использования.
Различия между substring() и slice()
Методы substring() и slice() почти идентичны, но между ними есть несколько тонких отличий, особенно в том, как обрабатываются отрицательные аргументы.
Метод substring() меняет местами два своих аргумента, если indexStart больше, чем indexEnd , что означает, что строка по-прежнему возвращается. В этом случае метод slice() возвращает пустую строку.
Если один или оба аргумента отрицательные или NaN , метод substring() обрабатывает их так, как если бы они были равны 0 .
slice() также обрабатывает аргументы NaN как 0 , но когда ему присваиваются отрицательные значения, он считает в обратном порядке от конца строки, чтобы найти индексы.
Дополнительные примеры с отрицательными числами см. на странице slice().
Замена подстроки в строке
В следующем примере заменяется подстрока в строке. Он заменит как отдельные символы, так и подстроки. Вызов функции в конце примера изменяет строку «О дивный новый мир» на «О дивный новый мир» .
Обратите внимание, что это может привести к бесконечному циклу, если oldS сам является подстрокой newS — например, если вы попытались заменить здесь «World» на «OtherWorld».
Вы когда-нибудь пытались ввести данные, например 000123, в Excel?
Вы, вероятно, быстро заметите, что Excel автоматически удалит ведущие нули из любых чисел.
Это может сильно раздражать, если вы хотите, чтобы в ваших данных были начальные нули, и вы не знаете, как заставить Excel сохранить их.
К счастью, есть несколько способов дополнить числа нулями в начале.
В этом посте я покажу вам 9 способов добавить или оставить начальные нули в ваших числах.
Видеоруководство
Форматировать как текст
Есть возможность изменить формат диапазона на текстовый.
При этом все данные, которые вы вводите, будут рассматриваться как текстовые значения, даже если они являются числами. Это приведет к тому, что Excel сохранит начальные нули в ваших числах.
Измените формат с «Общий» на «Текст».
- Выберите диапазон ячеек, в которые вы хотите ввести ведущие нули.
- Перейдите на вкладку "Главная".
- В разделе «Числа» щелкните раскрывающийся список «Формат».
- Выберите «Текст» в параметрах формата.
Теперь, если вы попытаетесь ввести числа с ведущими нулями, они не исчезнут, поскольку вводятся как текстовые значения, а не числа.
Пользовательский формат
Вы можете добавить собственное форматирование для форматирования чисел с ведущими нулями.
Однако они будут иметь только начальные нули. Базовые данные не будут преобразованы в текст с добавленными нулями.
Добавьте собственный формат для отображения лидирующих нулей.
- Выберите диапазон ячеек, к которым вы хотите добавить ведущие нули, и откройте диалоговое окно «Формат ячеек».
- Нажмите правой кнопкой мыши и выберите "Формат ячеек".
- Используйте сочетание клавиш Ctrl + 1.
- Перейдите на вкладку "Число".
- Выберите «Пользовательский» в параметрах категории.
- Добавьте новый пользовательский формат в поле ввода "Тип". Если вы хотите, чтобы общее количество цифр, включая начальные нули, равнялось 6, добавьте 000000 в качестве пользовательского формата.
- Нажмите кнопку ОК.
После применения пользовательского формата вы заметите, что данные на самом деле не изменились.
При выборе ячейки с форматированием в строке формул по-прежнему будет отображаться исходное число. Они появляются на листе только с начальным нулевым форматом.
Это также означает, что если вы скопируете и вставите данные как значения, вы потеряете начальные нули.
Ведущий апостроф
Вы можете заставить Excel вводить число как текст, используя начальный апостроф.
Это означает, что вы сможете оставить нули впереди при вводе данных.
Этот метод позволяет быстро и легко вводить данные. Просто введите символ ' перед любым числом. Это сообщит Excel, что данные должны быть текстовыми, а не числовыми.
При нажатии Enter начальные нули останутся видимыми на листе. ' не будет отображаться на листе, но все равно будет отображаться в строке формул, когда курсор активной ячейки находится в ячейке.
Функция ТЕКСТ
Функция ТЕКСТ позволит вам применить настраиваемое форматирование к любым числовым данным, уже имеющимся в вашей электронной таблице.
- Значение. Это значение, которое вы хотите преобразовать в текст и применить к нему форматирование.
- Формат. Это применяемое форматирование.
Если вы хотите добавить нули к числу в ячейке B3, чтобы общее количество цифр равнялось 6, вы можете использовать приведенную выше формулу.
ВПРАВО
Еще один способ поставить нули перед формулой — использовать функцию ПРАВИЛЬНО. Вы можете соединить строку нулей с числом, а затем отрезать лишнее с помощью функции ПРАВИЛЬНО.
Функция RIGHT извлечет из текстового значения N самых правых символов.
- Текст. Это текст, из которого вы хотите извлечь символы.
- Число (Необязательно) – это количество символов, которое нужно извлечь из текста. Если этот аргумент не указан, будет извлечен только первый символ.
Приведенная выше формула объединяет несколько нулей в начале числа в ячейке B3, затем возвращает самые правые 6 символов, что приводит к некоторым ведущим нулям.
БАЗОВАЯ функция
Вы заметите, что в этой статье описывается 9 способов добавления лидирующих нулей, но в моем видео на YouTube показано только 8 способов.
Это потому, что я не знал, что вы можете использовать функцию BASE для добавления ведущих нулей, пока кто-то не упомянул об этом в комментариях к видео.
Функции BASE позволяют преобразовать число в текстовое представление с заданным основанием.
Обычно вы используете числа с основанием 10, но вы можете использовать эту функцию для преобразования числа с основанием 10 в представление с основанием 2 (двоичное).
- Число. Это число, которое вы хотите преобразовать в текстовое значение в другом формате.
- База – это база, в которую вы хотите преобразовать значение.
- MinLength (Необязательно) — это минимальная длина символов преобразованного текстового значения.
Приведенная выше формула преобразует число в ячейке B3 в число с основанием 10 (это уже число с основанием 10, но это сохранит его как основание 10) и преобразует его в текстовое значение, содержащее не менее 6 символов. Если преобразованное значение содержит менее 6 символов, оно будет дополнено нулями, чтобы получить как минимум 6 символов.
Определенно крутое новое использование функции, которую я никогда не использую.
Power Query и функция Text.PadStart
Power query — это преобразование данных, поэтому неудивительно, что вы можете преобразовывать свои числа, добавляя ведущие нули в power query.
К сожалению, это не та команда, которая находится на ленте, и для нее потребуется использовать функцию расширенного запроса в пользовательском столбце.
После импорта данных в power query вы можете добавить новый столбец с приведенной выше формулой, чтобы создать ведущие нули.
- Перейдите на вкладку "Добавить столбец".
- Выберите «Пользовательский столбец» на ленте.
- Создайте новое имя для пользовательского столбца и добавьте приведенную выше формулу в поле формулы пользовательского столбца.
- Нажмите кнопку ОК.
Это создаст новый столбец, в каждой строке которого будет не менее 6 символов, дополненных нулями, если это необходимо.
Сводная таблица и показатель DAX
Если вы хотите добавить ведущие нули к числам в сводной таблице, это можно сделать с помощью модели данных и некоторых показателей DAX.
Вы можете добавить приведенную выше формулу измерения для отображения ваших чисел в сводной таблице с ведущими нулями.
Обратите внимание, что функция FORMAT DAX точно такая же, как функция TEXT в Excel, но меры DAX должны быть объединены в одно значение, поэтому вам нужно поместить их в функцию CONCATENATEX.
Когда вы добавите новую меру в область "Значения" сводной таблицы, это приведет к созданию списка всех чисел, разделенных запятыми, с добавленными ведущими нулями.
Вычисляемый столбец Power Pivot
Есть еще один способ добавить нули в сводную таблицу. Вы можете добавить их в вычисляемый столбец в Power Pivot.
Таким образом, вы можете использовать новый столбец в области "Фильтр", "Строки" или "Столбец" сводной таблицы.
В надстройке Power Pivot вы можете добавить новый столбец и использовать функцию ФОРМАТ, чтобы создать ведущие нули в столбце с формулой, как показано выше.
Вычисляемый столбец вычисляет значение для каждой строки, поэтому нет необходимости заключать функцию в функцию CONCATENATEX, как в показателе DAX.
Теперь вы можете использовать этот новый столбец в области строк сводной таблицы, как и любой другой столбец данных!
Выводы
Может быть неприятно видеть, как все ваши нули исчезают, когда вы не знаете, почему это происходит или как это предотвратить.
Как видите, существует множество способов убедиться, что все эти нули остаются в ваших данных.
Каковы бы ни были ваши требования, для вас обязательно найдется хорошее решение.
Есть ли у вас любимый способ, который я пропустил?
Об авторе
Джон МакДугалл
Джон — Microsoft MVP, внештатный консультант и тренер, специализирующийся на Excel, Power BI, Power Automate, Power Apps и SharePoint. Другие интересные статьи Джона можно найти в его блоге или на канале YouTube.
Подписаться
Похожие записи
7 способов переименовать лист в Microsoft Excel
Важно поддерживать порядок в электронной таблице! Хорошо организованная электронная таблица.
8 способов объединения ячеек в Microsoft Excel
Объединенные ячейки — один из самых популярных вариантов, используемых начинающими электронными таблицами.
6 способов подсчета цветных ячеек в Microsoft Excel [иллюстрированное руководство]
Возможно, вы использовали цветовое кодирование в данных Excel или видели его в a.
Комментарии
4 комментария
Эй, босс, мне нужны начальные нули в моих данных, так как я делаю импорт в другой отстойный продукт Microsoft (powerapps), а нули должны быть там.
мой столбец данных имеет общий формат и содержит CS000000035678. (последние 5 цифр различаются) я заменяю все, чтобы удалить CS0000 из всех значений в столбце. конечно, ведущие нули удалены, и я получаю 35678. это данность.
использование пользовательского формата 00000000 не работает для моего импорта, поскольку нули фактически не являются частью данных.
Я форматирую столбец в текст и заменяю все, снова получается 35678.
Я редактирую ячейку в столбце и удаляю CS0000, а нули остались, и я получаю 00035678. (Похоже, у меня устанут пальцы после ручного обновления 4000 ячеек)
Огромное спасибо, отстойный продукт microsft. (Мне за 50, и я столько раз видел это с продуктами M$. Почему я не мог получить работу, ориентированную на яблоки! LOL) M$ делает много замечательных вещей, но затем они терпят неудачу в крошечных вещах, которые должны работать. В замене есть что-то, что даже в столбце с текстовым форматированием удаляет нули.
Я попробую использовать апостроф, но сомневаюсь, что мой процесс импорта примет его.
ответьте мне, если у вас есть подсказка/решение для меня. Спасибо, диджей
Вы можете импортировать в Power Apps как есть, а затем взять последние 8 символов с помощью функции RIGHT в Power Apps.
Спасибо за ответ. Ваш метод использования формулы BASE сработал. это даже позволило мне добавить апостроф перед нулями. Апостроф не отображается в ячейке, но отображается в строке формул при нажатии на ячейку.
Отличное решение для меня и других.
Существует так много методов. Вы также можете использовать функцию REPT & LEN.
Например, вам нужно не менее 14 символов. Ячейка, которую вы читаете, может иметь любую длину. Вы можете написать следующую формулу.
Читайте также: