[Aprender python desde cero] 24. Métodos de manipulación y recorrido de cadenas en Python

ejecutar cadena

Con la función de evaluación integrada de Python, puede ejecutar el código de Python en una cadena. De esta forma, las cadenas se pueden convertir en otros tipos de datos.

x = '1+1'
print(eval(x))  # 2
print(type(eval(x)))  # <class 'int'>

y = '{"name":"zhangsan","age":18}'
print(eval(y))
print(type(eval(y)))  # <class 'dict'>

print(eval('1 > 2'))  # False

eval('input("请输入您的姓名:")')

convertir a cadena

JSON (JavaScript Object Notation, JS Object Notation) es un formato ligero de intercambio de datos basado en un subconjunto de ECMAScript, que utiliza un formato de texto completamente independiente de los lenguajes de programación para almacenar y representar datos. JSON es esencialmente una cadena

JSON tiene funciones poderosas y una amplia gama de escenarios de uso. Actualmente, solo presentamos cómo usar el módulo JSON incorporado de Python para realizar la conversión mutua entre diccionarios, listas o tuplas y cadenas.

Con el método dumps de json, puede convertir diccionarios, listas o tuplas en cadenas.

import json

person = {
    
    'name': 'zhangsan', 'age': 18}
x = json.dumps(person)
print(x)  # {"name": "zhangsan", "age": 18}
print(type(x))  # <class 'str'>

nums = [1, 9, 0, 4, 7]
y = json.dumps(nums)
print(y)  # [1, 9, 0, 4, 7]
print(type(y)) # <class 'str'>

words = ('hello','good','yes')
z = json.dumps(words)
print(z) # ["hello", "good", "yes"]
print(type(z)) # <class 'str'>

Utilice el método de carga de json para convertir una cadena con el formato correcto en un diccionario o una lista.

x = '{"name": "zhangsan", "age": 18}'
person = json.loads(x)
print(person)  # {'name': 'zhangsan', 'age': 18}
print(type(person)) # <class 'dict'>

y = '[1, 9, 0, 4, 7]'
nums = json.loads(y)
print(nums) # [1, 9, 0, 4, 7]
print(type(nums)) # <class 'list'>

Qué tienen en común cadenas, listas, tuplas, diccionarios y conjuntos

Las cadenas, las listas, las tuplas, los diccionarios y las colecciones tienen muchas similitudes. Todos son objetos iterables compuestos por múltiples elementos y todos tienen algunos métodos que se pueden usar en común.

operador aritmético

En Python, algunos operadores aritméticos comunes se pueden usar en objetos iterables y sus resultados de ejecución son ligeramente diferentes.

operador Expresión de Python resultado describir Tipos de datos admitidos
+ [1, 2] + [3, 4] [1, 2, 3, 4] unir cadena, lista, tupla}
- {1,2,3,4} - {2,3} {1,4} establecer diferencia recolectar
* ['¡Hola!'] * 4 ['¡Hola!', '¡Hola!', '¡Hola!', '¡Hola!'] Copiar cadena, lista, tupla
en 3 en (1, 2, 3) Verdadero el elemento existe cadenas, listas, tuplas, diccionarios
no en 4 no en (1, 2, 3) Verdadero el elemento no existe cadenas, listas, tuplas, diccionarios

+

El operador de suma se puede usar en cadenas, listas y tuplas para concatenar múltiples objetos iterables, pero no en diccionarios y conjuntos.

>>> "hello " + "world"
'hello world'
>>> [1, 2] + [3, 4]
[1, 2, 3, 4]
>>> ('a', 'b') + ('c', 'd')
('a', 'b', 'c', 'd')

-

La resta solo se puede usar en conjuntos para encontrar la diferencia entre dos conjuntos.

>>> {
    
    1, 6, 9, 10, 12, 3} - {
    
    4, 8, 2, 1, 3}
{
    
    9, 10, 12, 6}

*

El operador de suma se puede usar en cadenas, listas y tuplas para iterar varias veces, y no se puede usar en diccionarios y conjuntos.

>>> 'ab' * 4
'ababab'
>>> [1, 2] * 4
[1, 2, 1, 2, 1, 2, 1, 2]
>>> ('a', 'b') * 4
('a', 'b', 'a', 'b', 'a', 'b', 'a', 'b')

en

Los operadores de miembros in y not in se pueden utilizar en todos los objetos iterables. Pero debe tenerse en cuenta que cuando están dentro y fuera del diccionario, comprueban si existe la clave especificada, no el valor.

>>> 'llo' in 'hello world'
True
>>> 3 in [1, 2]
False
>>> 4 in (1, 2, 3, 4)
True
>>> "name" in {
    
    "name":"chris", "age":18}
True

atravesar

A través de... en... podemos atravesar objetos iterables como cadenas, listas, tuplas, diccionarios y colecciones.

recorrido de cuerdas

a_str = "hello world"
for char in a_str:
    print(char,end=' ')

recorrido de lista

a_list = [1, 2, 3, 4, 5]
for num in a_list:
    print(num,end=' ')

recorrido de tupla

a_turple = (1, 2, 3, 4, 5)
for num in a_turple:
    print(num,end=" ")

recorrido subíndice

Los objetos iterables se pueden envolver en un objeto de enumeración utilizando la clase integrada de enumeración. Al atravesar la enumeración, puede obtener el subíndice y los elementos de un objeto iterable al mismo tiempo.

nums = [12, 9, 8, 5, 4, 7, 3, 6]

# 将列表nums包装成enumerate对象
for i, num in enumerate(nums): # i表示元素下标,num表示列表里的元素
    print('第%d个元素是%d' % (i, num))

Caso avanzado

[Python] Python se da cuenta del juego de adivinanzas: ¡desafía tu inteligencia y tu suerte!

[python] La biblioteca Python tkinter implementa un programa GUI para el convertidor de unidades de peso

[python] Use Selenium para obtener entradas (2023 Blog Star)

[python] Use Selenium y Chrome WebDriver para obtener información de artículos en [Tencent Cloud Studio Practical Training Camp]

Use el estudio Tencent Cloud Cloud para realizar la programación Baidu AI para realizar el reconocimiento de texto

[Diversión con la serie Python [Xiaobai debe ver] Rastreador de subprocesos múltiples de Python: descargue imágenes de sitios web de paquetes de emoticonos

[Serie Juega con Python] [Imprescindible para Xiaobai] Usa Python para rastrear datos históricos de Shuangseqiu y analizarlos visualmente

[Jugar con la serie python] [Imprescindible para Xiaobai] Utilice la tecnología de rastreo de Python para obtener una IP proxy y guardarla en un archivo

[Imprescindible para Xiaobai] Ejemplo de síntesis de imágenes de Python usando la biblioteca PIL para realizar la síntesis de múltiples imágenes por rangos y columnas

[Xiaobai debe ver] El combate real del rastreador de Python descarga imágenes de diosas en lotes y las guarda localmente

[Xiaobai debe ver] Análisis detallado del generador de nube de palabras de Python e implementación de código

[Xiaobai debe ver] Python rastrea un ejemplo de datos de jugadores de la NBA

[Imprescindible para Xiaobai] Código de muestra para rastrear y guardar audio del Himalaya usando Python

[Imprescindible para Xiaobai] Realización técnica del uso de Python para descargar imágenes de piel de League of Legends en lotes

[Xiaobai debe ver] Visualización y procesamiento de datos del rastreador de Python

[Imprescindible para Xiaobai] Programa rastreador de Python para obtener fácilmente imágenes de piel de héroe de King of Glory

[Xiaobai debe ver] usar Python para generar una lista personalizada de documentos de Word

[Imprescindible para Xiaobai] Combate de rastreadores de Python: obtenga imágenes del sitio web de Onmyoji y guárdelas automáticamente

Xiaobai debe ver la serie de sistemas de gestión de bibliotecas: código de muestra para las funciones de inicio de sesión y registro

100 casos del combate real de Xiaobai: un programa completo y simple de sentencia ganadora de la lotería Shuangseqiu, adecuado para los primeros pasos de Xiaobai

Procesamiento y visualización de datos geoespaciales usando geopandas y shapely (.shp)

Utilice selenio para rastrear los datos de la lista de películas de Maoyan

Explicación detallada del principio y la implementación del algoritmo de mejora de imagen Retinex

Guía de introducción a los rastreadores (8): Escriba programas rastreadores de datos meteorológicos para el análisis visual

Guía introductoria a los rastreadores (7): uso de Selenium y BeautifulSoup para rastrear la película Douban Top250 Ejemplo de explicación [Reptile Xiaobai must watch]

Guía de inicio de rastreadores (6): Anti-rastreadores y habilidades avanzadas: proxy de IP, disfraz de agente de usuario, verificación de inicio de sesión de omisión de cookies y herramientas de identificación de código de verificación

Guía introductoria a los rastreadores (5): rastreadores distribuidos y control de concurrencia [Métodos de implementación para mejorar la eficiencia del rastreo y el control de la racionalidad de las solicitudes]

Introducción a los rastreadores (4): la mejor forma de rastrear páginas web dinámicas con Selenium y API

Guía de introducción a los rastreadores (3): solicitudes de red de Python y estrategias comunes contra los rastreadores

Introducción a los rastreadores (2): cómo utilizar expresiones regulares para la extracción y el procesamiento de datos

Primeros pasos con los reptiles (1): aprenda los conceptos básicos y las habilidades de los reptiles

Aplicación del modelo de aprendizaje profundo en el reconocimiento de imágenes: práctica de conjuntos de datos CIFAR-10 y análisis de precisión

Conceptos básicos de programación orientada a objetos de Python y código de muestra

Guía de operación de la base de datos MySQL: aprenda a usar Python para agregar, eliminar, modificar y consultar operaciones

Guía de operación de archivos de Python: codificación, lectura, escritura y manejo de excepciones

Use Python y Selenium para automatizar el rastreo#【Convocatoria especial para el Festival del Bote del Dragón】Explore la última tecnología, y el futuro se lo debe a usted"Zong" #Artículos contribuidos

Tutorial de multihilo y multiproceso de Python: análisis completo, casos de código y habilidades de optimización

Conjunto de herramientas de automatización de Selenium - Guía completa y tutoriales

Tutorial de los conceptos básicos del rastreador web de Python avanzados al combate real

Tutorial introductorio de Python: domine los conocimientos básicos de for loop, while loop, operación de cadenas, lectura y escritura de archivos y manejo de excepciones

Tutorial de procesamiento y análisis de datos de Pandas: desde lo básico hasta el combate real

Explicación detallada de los tipos de datos de uso común y las operaciones relacionadas en Python

[Último en 2023] Explicación detallada de seis esquemas principales para mejorar el modelo de índice de clasificación

Introducción a los conceptos básicos y habilidades avanzadas de programación de Python, desarrollo web, análisis de datos y aprendizaje automático e inteligencia artificial

Gráfico de resultados de predicción con 4 métodos de regresión: regresión vectorial, regresión de bosque aleatorio, regresión lineal, regresión de vecinos más cercanos K

Supongo que te gusta

Origin blog.csdn.net/qq_33681891/article/details/132290277
Recomendado
Clasificación