{"id":349,"date":"2024-10-18T18:25:54","date_gmt":"2024-10-18T18:25:54","guid":{"rendered":"https:\/\/equipomedios.com\/blog\/?p=349"},"modified":"2024-10-18T18:25:54","modified_gmt":"2024-10-18T18:25:54","slug":"tipos-de-datos-tipo-booleanos-python","status":"publish","type":"post","link":"https:\/\/equipomedios.com\/blog\/tipos-de-datos-tipo-booleanos-python\/","title":{"rendered":"Tipos de datos | Tipo Booleanos | Python"},"content":{"rendered":"<h1>Tipo booleanos<\/h1>\n<p>El tipo booleano s\u00f3lo puede tener dos valores:\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0(verdadero) y\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>\u00a0(falso). Estos valores son especialmente importantes para las expresiones condicionales y los bucles, como ver\u00e1 m\u00e1s adelante.<\/p>\n<table class=\"docutils\" border=\"1\">\n<colgroup>\n<col width=\"18%\" \/>\n<col width=\"18%\" \/>\n<col width=\"44%\" \/>\n<col width=\"21%\" \/><\/colgroup>\n<tbody valign=\"top\">\n<tr class=\"row-odd\">\n<td><strong>Clase<\/strong><\/td>\n<td><strong>Tipo<\/strong><\/td>\n<td><strong>Notas<\/strong><\/td>\n<td><strong>Ejemplo<\/strong><\/td>\n<\/tr>\n<tr class=\"row-even\">\n<td><code class=\"docutils literal notranslate\"><span class=\"pre\">bool<\/span><\/code><\/td>\n<td>N\u00fameros<\/td>\n<td>Valor booleano falso.<\/td>\n<td><code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code><\/td>\n<\/tr>\n<tr class=\"row-odd\">\n<td><code class=\"docutils literal notranslate\"><span class=\"pre\">bool<\/span><\/code><\/td>\n<td>N\u00fameros<\/td>\n<td>Valor booleano verdadero.<\/td>\n<td><code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>En el contexto de las operaciones booleanas, y tambi\u00e9n cuando las expresiones son usadas bajo sentencias de flujo de control, los siguientes valores son interpretados como\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>:<\/p>\n<ul class=\"simple\">\n<li><code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>.<\/li>\n<li><span class=\"std std-ref\">None<\/span>.<\/li>\n<li><span class=\"std std-ref\">N\u00famero cero<\/span>\u00a0en todos los tipos.<\/li>\n<li><span class=\"std std-ref\">Cadena de caracteres<\/span>\u00a0vaci\u00e1s.<\/li>\n<li>Contenedores, incluyendo\u00a0<em>cadenas de caracteres<\/em>,\u00a0<span class=\"std std-ref\">tuplas<\/span>,\u00a0<span class=\"std std-ref\">listas<\/span>,\u00a0<span class=\"std std-ref\">diccionarios<\/span>\u00a0y\u00a0<span class=\"std std-ref\">conjuntos<\/span>\u00a0mutables e inmutables.<\/li>\n<\/ul>\n<p>A continuaci\u00f3n, varios ejemplos en c\u00f3digos de los citado previamente:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"kc\">False<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"kc\">False<\/span> <span class=\"o\">==<\/span> <span class=\"kc\">False<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"mi\">0<\/span> <span class=\"o\">==<\/span> <span class=\"kc\">False<\/span>\r\n<span class=\"go\">True<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"s2\">\"\"<\/span> <span class=\"o\">==<\/span> <span class=\"kc\">False<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"kc\">None<\/span> <span class=\"o\">==<\/span> <span class=\"kc\">False<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"p\">[]<\/span> <span class=\"o\">==<\/span> <span class=\"kc\">False<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"p\">()<\/span> <span class=\"o\">==<\/span> <span class=\"kc\">False<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"p\">{}<\/span> <span class=\"o\">==<\/span> <span class=\"kc\">False<\/span>\r\n<span class=\"go\">False<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"p\">[<\/span><span class=\"s1\">''<\/span><span class=\"p\">,<\/span> <span class=\"s1\">''<\/span><span class=\"p\">]<\/span> <span class=\"o\">==<\/span> <span class=\"kc\">False<\/span>\r\n<span class=\"go\">False<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Todos los otros valores son interpretados por defecto a\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>. El operador l\u00f3gico\u00a0<span class=\"std std-ref\">not<\/span>\u00a0produce\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0si su argumento es falso,\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>\u00a0de lo contrario.<\/p>\n<p>Los tipos integrados\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">False<\/span><\/code>\u00a0y\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">True<\/span><\/code>\u00a0son solamente dos instancias de la clase\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">bool<\/span><\/code>. En realidad el tipo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">bool<\/span><\/code>\u00a0es una\u00a0<span class=\"std std-ref\">subclase<\/span>\u00a0del tipo\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">int<\/span><\/code>\u00a0o entero plano, es decir, sus valores son\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">0<\/span><\/code>\u00a0y\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">1<\/span><\/code>\u00a0respectivamente, en casi todos los contextos:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">int<\/span><span class=\"p\">(<\/span><span class=\"kc\">False<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">0<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">int<\/span><span class=\"p\">(<\/span><span class=\"kc\">True<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">1<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>En el ejemplo anterior se convierte tipos booleanos a tipo enteros, siempre devuelve sus valores num\u00e9ricos\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">0<\/span><\/code>\u00a0y\u00a0<code class=\"docutils literal notranslate\"><span class=\"pre\">1<\/span><\/code>. La excepci\u00f3n a la regla anterior sucede cuando un tipo booleano es convertido a un tipo de\u00a0<span class=\"std std-ref\">cadenas de caracteres<\/span>, las cadenas\u00a0<em>\u201cFalse\u201d<\/em>\u00a0y\/o\u00a0<em>\u201cTrue\u201d<\/em>\u00a0son retornadas, respectivamente:<\/p>\n<div class=\"highlight-default notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"kc\">True<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'bool'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">str<\/span><span class=\"p\">(<\/span><span class=\"kc\">True<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'True'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"nb\">str<\/span><span class=\"p\">(<\/span><span class=\"kc\">True<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">&lt;type 'str'&gt;<\/span>\r\n<span class=\"go\">&gt;&gt;&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"kc\">False<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">&lt;type 'bool'&gt;<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">str<\/span><span class=\"p\">(<\/span><span class=\"kc\">False<\/span><span class=\"p\">)<\/span>\r\n<span class=\"go\">'False'<\/span>\r\n<span class=\"gp\">&gt;&gt;&gt; <\/span><span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"nb\">str<\/span><span class=\"p\">(<\/span><span class=\"kc\">False<\/span><span class=\"p\">))<\/span>\r\n<span class=\"go\">&lt;type 'str'&gt;<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p>Puede que esto para usted, no lo entienda mucho, si no conoces los t\u00e9rminos de la\u00a0<span class=\"std std-ref\">orientaci\u00f3n a objetos<\/span>, que se tocar\u00e1 m\u00e1s adelante, aunque tampoco es nada importante.<\/p>\n<div class=\"admonition important\">\n<p class=\"first admonition-title\">Importante<\/p>\n<p class=\"last\">Los tipos\u00a0<em>booleanos<\/em>\u00a0no puede ser a su vez una subclase.<\/p>\n<\/div>\n<div id=\"convertir-a-booleanos\" class=\"section\">\n<h2>Convertir a booleanos<\/h2>\n<p>Para convertir a\u00a0<em>tipos booleanos<\/em>\u00a0debe usar la funci\u00f3n\u00a0<span class=\"std std-ref\">bool()<\/span>\u00a0la cual\u00a0<span class=\"std std-ref\">esta integrada<\/span>\u00a0en el interprete Python.<\/p>\n<\/div>\n<div id=\"ejemplos\" class=\"section\"><span id=\"python-bool-ejs\"><\/span><\/p>\n<h2>Ejemplos<\/h2>\n<p>A continuaci\u00f3n, se presentan algunos ejemplos de su uso:<\/p>\n<p><strong>Ejemplo de tipos de datos booleanos<\/strong><\/p>\n<div class=\"highlight-python notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"n\">aT<\/span><span class=\"p\">,<\/span> <span class=\"n\">aF<\/span> <span class=\"o\">=<\/span> <span class=\"kc\">True<\/span><span class=\"p\">,<\/span> <span class=\"kc\">False<\/span>\r\n<span class=\"nb\">print<\/span> <span class=\"p\">(<\/span><span class=\"s2\">\"El valor es\"<\/span><span class=\"p\">,<\/span> <span class=\"n\">aT<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"de tipo:\"<\/span><span class=\"p\">,<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">aT<\/span><span class=\"p\">),<\/span> <span class=\"s2\">\"<\/span><span class=\"se\">\\n<\/span><span class=\"s2\">\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"nb\">print<\/span> <span class=\"p\">(<\/span><span class=\"s2\">\"El valor es\"<\/span><span class=\"p\">,<\/span> <span class=\"n\">aF<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"de tipo:\"<\/span><span class=\"p\">,<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">aF<\/span><span class=\"p\">))<\/span>\r\n<\/pre>\n<\/div>\n<\/div>\n<p><strong>Ejemplo de operadores booleanos<\/strong><\/p>\n<div class=\"highlight-python notranslate\">\n<div class=\"highlight\">\n<pre><span class=\"n\">aAnd<\/span> <span class=\"o\">=<\/span> <span class=\"kc\">True<\/span> <span class=\"ow\">and<\/span> <span class=\"kc\">False<\/span>\r\n<span class=\"nb\">print<\/span> <span class=\"p\">(<\/span><span class=\"s2\">\"SI es Verdadero Y Falso, es\"<\/span><span class=\"p\">,<\/span> <span class=\"n\">aAnd<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"de\"<\/span><span class=\"p\">,<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">aAnd<\/span><span class=\"p\">),<\/span> <span class=\"s2\">\"<\/span><span class=\"se\">\\n<\/span><span class=\"s2\">\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"n\">aOr<\/span> <span class=\"o\">=<\/span> <span class=\"kc\">True<\/span> <span class=\"ow\">or<\/span> <span class=\"kc\">False<\/span>\r\n<span class=\"nb\">print<\/span> <span class=\"p\">(<\/span><span class=\"s2\">\"SI es Verdadero O Falso, es\"<\/span><span class=\"p\">,<\/span> <span class=\"n\">aOr<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"de\"<\/span><span class=\"p\">,<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">aOr<\/span><span class=\"p\">),<\/span> <span class=\"s2\">\"<\/span><span class=\"se\">\\n<\/span><span class=\"s2\">\"<\/span><span class=\"p\">)<\/span>\r\n<span class=\"n\">aNot<\/span> <span class=\"o\">=<\/span> <span class=\"ow\">not<\/span> <span class=\"kc\">True<\/span>\r\n<span class=\"nb\">print<\/span> <span class=\"p\">(<\/span><span class=\"s2\">\"Si NO es Verdadero, es\"<\/span><span class=\"p\">,<\/span> <span class=\"n\">aNot<\/span><span class=\"p\">,<\/span> <span class=\"s2\">\"de\"<\/span><span class=\"p\">,<\/span> <span class=\"nb\">type<\/span><span class=\"p\">(<\/span><span class=\"n\">aNot<\/span><span class=\"p\">),<\/span> <span class=\"s2\">\"<\/span><span class=\"se\">\\n<\/span><span class=\"s2\">\"<\/span><span class=\"p\">)<\/span><\/pre>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Tipo booleanos El tipo booleano s\u00f3lo puede tener dos valores:\u00a0True\u00a0(verdadero) y\u00a0False\u00a0(falso). Estos valores son especialmente importantes para las expresiones condicionales y los bucles, como ver\u00e1 m\u00e1s adelante. Clase Tipo Notas Ejemplo bool N\u00fameros Valor booleano falso. False bool N\u00fameros Valor booleano verdadero. True En el contexto de las operaciones booleanas, y tambi\u00e9n cuando las expresiones [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":331,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false},"version":2}},"categories":[39,40],"tags":[],"class_list":["post-349","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-programacion","category-python"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/equipomedios.com\/blog\/wp-content\/uploads\/2024\/08\/python-logo-master-v3-TM.png?fit=601%2C203&ssl=1","jetpack_sharing_enabled":true,"jetpack-related-posts":[],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/posts\/349","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/comments?post=349"}],"version-history":[{"count":1,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/posts\/349\/revisions"}],"predecessor-version":[{"id":350,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/posts\/349\/revisions\/350"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/media\/331"}],"wp:attachment":[{"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/media?parent=349"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/categories?post=349"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/equipomedios.com\/blog\/wp-json\/wp\/v2\/tags?post=349"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}