Android

Paano i-convert ang mga string sa mga integer sa python

Beginner Python Tutorial 29 - Convert Integer to String (Concat int and str)

Beginner Python Tutorial 29 - Convert Integer to String (Concat int and str)

Talaan ng mga Nilalaman:

Anonim

Ang lahat ng mga uri ng data sa Python, kabilang ang mga integer at mga string, ay mga bagay. Kadalasan kapag nagsusulat ng Python code, kakailanganin mong i-convert ang isang uri ng data sa isa pa. Halimbawa, upang maisagawa ang isang pagpapatakbo sa matematika sa isang bilang na kinakatawan bilang isang string, kailangan itong ma-convert sa isang integer.

Sa tutorial na ito, ipapakita namin sa iyo kung paano i-convert ang isang string ng Python sa isang integer.

Python int() Pag-andar

Ang built-in na int() function ay nagbabalik ng isang perpektong object integer mula sa isang naibigay na numero o string. Kinakailangan ang sumusunod na form:

int(x, base=10)

Tumatanggap ang 'function ng dalawang argumento:

  • x - String o numero na mai-convert sa isang integer. base - Kinakatawan nito ang sistema ng numero ng unang argumento. Ang halaga nito ay maaaring 0 at 2-36. Kung walang ibinigay na base, ang default ay 10 (decimal integer).

Karaniwan, ang mga integer ay ipinahayag sa hexadecimal (base 16), desimal (base 10), octal (base 8), o binibigkas (base 2) notasyon.

Kung ang ibinigay na argumento ay hindi maaaring kinakatawan bilang isang integer, ang pagpapaandar ay magtatapon ng isang pagbubukod sa ValueError .

Pag-convert ng isang Python String sa Integer

Sa Python, isang 'string' ay isang listahan ng mga character na idineklara gamit ang solong ( ' ), doble ( " ), o triple quote ( """ ).

Kung ang isang variable na naglalaman lamang ng mga numero ay ipinahayag gamit ang mga quote, ang uri ng data nito ay nakatakda sa String. Isaalang-alang ang sumusunod na halimbawa:

days = "23" type(days)

Ang type() function ay nagpapakita sa amin na ang mga days ay isang bagay na String.

Subukan nating gumawa ng isang operasyon sa matematika sa variable:

print(days+5)

Itatapon ng Python ang isang error sa pagbubukod ng TypeError dahil hindi kami maaaring magsagawa ng isang pagkalkula ng karagdagan sa string at integer:

Traceback (most recent call last): File " ", line 1, in TypeError: cannot concatenate 'str' and 'int' objects Traceback (most recent call last): File " ", line 1, in TypeError: cannot concatenate 'str' and 'int' objects Traceback (most recent call last): File " ", line 1, in TypeError: cannot concatenate 'str' and 'int' objects

Upang i-convert ang isang string na representasyon ng isang perpektong integer sa int , ipasa ang string sa int() function, na nagbabalik ng isang perpektong integer:

days = "23" days_int = int(days) type(days_int)

print(days_int+5)

28

Kung kasama ang bilang ng mga koma, pagmamarka ng libu-libo, milyon-milyon, atbp, kailangan mong alisin ang mga koma bago maipasa ang numero sa int() function:

total = "1, 000, 000" int(total.replace(", ", ""))

1000000

Kapag nagko-convert ng mga string na kumakatawan sa mga integer sa iba't ibang mga system number, siguraduhing ginagamit mo ang wastong base .

Halimbawa, sa hexadecimal system, ang bilang na 54732 ay kinakatawan bilang D5CF . Upang mai-convert ito sa isang perpektong integer kailangan mong gumamit ng base 16:

int("D5CF", 16)

54735

Kung ipinapasa mo ang string ng D5CF sa int() andar nang hindi nagtatakda ng isang base, itatapon nito ang isang exceptionError exception:

int("D5CF")

Traceback (most recent call last): File " ", line 1, in ValueError: invalid literal for int() with base 10: 'D5CF' Traceback (most recent call last): File " ", line 1, in ValueError: invalid literal for int() with base 10: 'D5CF' Traceback (most recent call last): File " ", line 1, in ValueError: invalid literal for int() with base 10: 'D5CF'

Konklusyon

Sa Python, maaari mong mai-convert ang isang string sa isang integer gamit ang int() function.

sawa