Как да конвертирате в низ в Python

Работа вкъщи.

Млад мъж, който пише на лаптопа си у дома

Кредит на изображението: g-stockstudio/iStock/Getty Images

За разлика от C++ и Java, променливите на Python не съдържат изрична информация за типа. Ако използвате функция, която изисква низ, можете да предавате променливи от други типове към нея без хвърляне на изключение, въпреки че вашият код може да хвърли изключение, когато се опита да обработи променливата. Единствените типове данни, които може да се наложи да конвертирате в низове, са сложни структури от данни, като набори и списъци. Python включва удобни функции и оператори за итериране на елементите в структура от данни и добавяне на знаци към низова променлива.

Силни, динамично въведени езици

C++ и Java изискват резервна дума за тип, която да предшества всички разпределения на променливи, тъй като компилаторът или средата по време на изпълнение трябва да знаят как да третират данните. Тези статично въведени езици използват прехвърляне на типове за преобразуване между типове, ако е възможно. Тъй като Python е динамично въведен език, интерпретаторът извежда типа по време на изпълнение, така че просто присвоявате стойности на променливи според нуждите. Можете да присвоите произволен тип данни на променлива, използвана преди като различен тип, а колекторът за боклук на Python премахва старата променлива от паметта.

Видео на деня

Преобразуване на структури от данни в низове

Ако вашата програма събира текстова информация в съставна структура, като например списък, кортеж или набор, можете да преминете през структурата на данните, за да добавите елементи към низова променлива. Не е необходимо да декларирате низова променлива, преди да повторите структурата на данните, но това може да направи кода ви по-опростен. Например, следният код демонстрира най-основния метод за преобразуване на списък в низ:

ultimateQuestion = "" # деклариране на празен низ "ultimateQuestion"

tokens = ["Какво е ", 6, " пъти ", 9, "?"] # списък със смесени типове с интервал

за t в токени: ultimateQuestion += str (t)

печат (ultimateQuestion)

Методът str, използван в цикъла for, прехвърля цели числа към низове и няма ефект върху съществуващите низове. Ако стартирате този код в интерпретатора на Python, той извежда "Колко е 6 по 9?"

Вградени низови методи

Подобно на повечето езици от високо ниво, Python включва много методи, които принадлежат към вградения тип низ. В Python можете да извикате тези методи от низов литерал, така че за да свържете списъчни елементи, например, можете да предадете списъчна променлива към метода за присъединяване на низовия литерал, както е в следния пример:

tokens = ['Hello', 'World'] #string токени без интервал

pyString = ' '.join (токени)

печат (pyString)

Този скрипт извиква присъединяване от низовия литерал ' ', който е низ от един символ само от интервала. Той обединява „Hello“ и „World“ в „Hello World“, като вмъква извикващия обект – символ за интервал – между всеки елемент от списъка.

Резолюция на променлив обхват на Python

Както в други езици на високо ниво, трябва да обърнете внимание на обхвата на променливата, когато декларирате и присвоявате низови променливи. Ако декларирате низова променлива вътре във функция или цикъл, не можете да я използвате никъде другаде в програмата. Например, интерпретаторът на Python унищожава променливата "verticalList" след връщане от цикъла:

за g в хранителни стоки: verticalList += g + '\n' # низ, деклариран вътре в цикъла for

печат (вертикален списък)

Този скрипт хвърля изключение, защото "verticalList" не е дефиниран извън обхвата на цикъла for.