La siguiente es una lista de algunos de los métodos/funciones importantes en Python con descripciones que debe conocer para comprender este artículo.
- len() : se utiliza para contar el número de elementos (elementos/caracteres) de iterables como lista, tupla, string, diccionario, etc.
- str() : se utiliza para transformar el valor de los datos (enteros, flotantes, lista) en una string.
- abspath() : devuelve la ruta absoluta del nombre del archivo/directorio pasado como argumento.
- enumerate() : devuelve un objeto de enumeración para el iterable pasado que se puede usar para iterar sobre los elementos del iterable con acceso a sus índices.
- list() : se utiliza para crear una lista utilizando un iterable existente (lista, tupla, diccionario, conjunto).
- listdir() : se utiliza para enumerar el contenido del directorio. La ruta del directorio se pasa como argumento.
- isfile() : comprueba si el parámetro pasado indica la ruta a un archivo. En caso afirmativo, devuelve Verdadero ; de lo contrario , Falso
- isdir() : comprueba si el parámetro pasado indica la ruta a un directorio. En caso afirmativo, devuelve Verdadero ; de lo contrario , Falso
- append() : se usa para agregar elementos en la lista.
Consulte el siguiente código ejecutado en el terminal interactivo de Python para obtener un recorrido rápido por los usos de las funciones/métodos anteriores.
>>> nums = [1,2,3,4,5] # list >>> name = "Alexander" >>> details = {"name": "Hemkesh", "age": 23, "active": True} >>> >>> # Using len() ... >>> len(nums) 5 >>> len(name) 9 >>> len(details) 3 >>> >>> # Using str() ... >>> str(12) '12' >>> str(nums) '[1, 2, 3, 4, 5]' >>> str(details) "{'active': True, 'age': 23, 'name': 'Hemkesh'}" >>> >>> # Using abspath() ... >>> import os >>> os.listdir(".") ['Django', 'Prep', 'python-the-snake'] >>> os.path.abspath("./Django") # pass ".\Django" on windows '/Users/admin/projects/Python/Django' >>> os.path.abspath("Django") '/Users/admin/projects/Python/Django' >>> >>> # Using enumerate() ... >>> enumerate(nums) <enumerate object at 0x100620b90> >>> >>> for index, item in enumerate(nums): ... print index, item ... 0 1 1 2 2 3 3 4 4 5 >>> >>> # Using list() ... >>> list() [] >>> list(details ) ['active', 'age', 'name'] >>> list(name) ['A', 'l', 'e', 'x', 'a', 'n', 'd', 'e', 'r'] >>> >>> # Using isfile() & isdir() ... >>> os.path.isdir("Django") True >>> os.path.isfile("Django") False >>> >>> os.path.isdir("./python-the-snake/README.md") False >>> os.path.isfile("./python-the-snake/README.md") True >>> >>> # Using append() ... >>> nums.append(12) >>> nums [1, 2, 3, 4, 5, 12] >>> nums.append(67) >>> nums [1, 2, 3, 4, 5, 12, 67] >>> >>> # Don't press "Run on IDE" button available on right. You will get error ... # as the statements are already executed on interactive terminal. ... >>>
Estructura de ruta en diferentes sistemas operativos
Windows usa \ (barra diagonal inversa) como separador de ruta, p. C:\Users\Desktop\
Sistema basado en Linux como MAC OS X, Linux usa / (barra inclinada), p. /Usuarios/Escritorio/
Veamos una descripción general rápida del funcionamiento de los métodos y funciones anteriores, ya que estamos usando esto en nuestro programa final.
# Python version : 2.7.12 # len() # To count number of items in a list # To count number of characters in a string evens = [ 2, 34, 6, 8, 10] print len(evens) city = "Bangalore" print len(city), "\n" # str() : Converting into string representation odds = [ 1, 3, 67, 45, 83, 59] year = 2017 print odds print str(odds) + " A list.\n" print year print str(year) + " A year.\n" # enumerate() : iterating over index & value of a list for (index, item) in enumerate(odds): print index, item # abspath() : Getting absolute path of passed argument(path) import os absolute_path = os.path.abspath(".") print "\n", absolute_path, "\n" # isdir() : To check if passed argument is valid directory path answer = os.path.isdir("/Users/admin/Desktop/js") print answer # isfile() : To check if the passed argument is valid file path answer = os.path.isfile("/Users/admin/Desktop/js/array.js") print answer, "\n" # list() : To create list details = { "name":"Rojert Rendrick", "age":24, "city":"Bangalore" } keys = list( details ) print keys, "\n" # append() : Appending items to list print evens evens.append(98) evens.append(64) print evens, "\n" # repetition operator(*) on strings print "Python"*3 print "#"*20
Producción:
5 9 [1, 3, 67, 45, 83, 59] [1, 3, 67, 45, 83, 59] A list. 2017 2017 A year. 0 1 1 3 2 67 3 45 4 83 5 59 /Users/admin/projects/Python/PythonFiles True True ['city', 'age', 'name'] [2, 34, 6, 8, 10] [2, 34, 6, 8, 10, 98, 64] PythonPythonPython ####################
Hay una cantidad de archivos y directorios de Python dentro de /Users/admin/projects/Python/PythonFiles , enumeraremos todos estos.
Supongamos que el directorio de trabajo actual es /Users/admin/projects/Python/Django/E-Commerce-projects/ecommerce-2/src , que contiene algunos archivos y carpetas.
En tu caso, será diferente. Solo necesitará pasar la ruta exacta del directorio que desea enumerar.
El siguiente es el código python para mostrar todos los archivos y directorios según la ruta absoluta o relativa pasada.
Si la ruta no se especifica en la declaración de llamada, se mostrará el contenido del directorio de trabajo actual.
# This Python code is for Python version : 2.7.12 def show_directories(dir_list, path): """ A function that lists the directories """ import os s = "%s%d%s"%("\n", len(dir_list), " directories of " + os.path.abspath(path)) l = len(s) print s print "="*l for index, dir in enumerate(dir_list): print str(index+1) + ") ", dir def show_files(file_list, path): """ A function that lists the files """ import os s = "%s%d%s"%("\n", len(file_list), " files of " + os.path.abspath(path)) l = len(s) print s print "="*l for index, file in enumerate(file_list): print str(index+1) + ") ", file def show_cwd_contents( path="." ): # A function that calls 2 functions to separately # listing out directories and files. # It takes a default argument as cwd(.). We can # pass other paths too. import os f_list = [] d_list = list() try: for f in os.listdir(path): if os.path.isfile(os.path.join(path, f)): f_list.append(f) else: if os.path.isdir(os.path.join(path, f)): d_list.append(f) except: print "\nError, once check the path" return show_files(f_list, path) show_directories(d_list, path) if __name__ == "__main__": # If this module is imported in other module then # we need to separately call show_cwd_contents() Or # show_cwd_contents(path). show_cwd_contents() show_cwd_contents("/Users/admin/projects/Python/PythonFiles")
Producción:
5 files of /Users/admin/projects/Python/Django/E-Commerce-projects/ecommerce-2/src =================================================================================== 1) .gitignore 2) db.sqlite3 3) manage.py 4) requirements.txt 5) todo.txt 5 directories of /Users/admin/projects/Python/Django/E-Commerce-projects/ecommerce-2/src ========================================================================================= 1) ecommerce2 2) newsletter 3) products 4) static_in_pro 5) templates 70 files of /Users/admin/projects/Python/PythonFiles ===================================================== 1) 2_list_iterators.py 2) app.py 3) class_script_exec.py 4) class_variables.py 5) date_and_time.py 6) datetime.txt 7) dict.py 8) dictionary.py 9) django_home.html 10) error_handling.py 11) error_handling_output.py 12) error_handling_output.txt 13) execution_pickle.py 14) fb_task.py 15) for.py 16) gfg_sum_of_primes_in_numbers.py 17) hackerrank_numbers.py 18) hck_addition_aint_simple.py 19) hck_biased_chandan.py 20) hck_c_counts.py 21) hck_c_counts2.py 22) hck_c_counts3.py 23) hck_cool_numbers.py 24) hck_earth_fans.py 25) hck_earth_fans_2.py 26) hck_earth_fans_3.py 27) hck_earth_fans_final_on_28_dec_2016.py 28) hck_Little_Jhool_and_psychic_powers.py 29) hck_lonely_monk.py 30) hck_lonely_monk_orig.py 31) hck_maximum_AND.py 32) hck_min_max_problem.py 33) hck_monk_and_power_of_time.py 34) hck_numbers_rotation.py 35) hck_palindomic_numbers.py 36) hck_print_hackerearth.py 37) hck_print_hackerearth_2_way.py 38) hck_range_query.py 39) hck_recursive_functions.py 40) hck_recursive_sums.py 41) hck_strange_addition.py 42) hck_sum_of_numbers.py 43) interactive_img_resolutions.txt 44) json.py 45) json.pyc 46) katyperry.py 47) lambda_expression.py 48) linked_list_delete_nodes_at_front.py 49) linked_list_delete_nodes_at_front_output.txt 50) linked_list_is_palindrome_gfg.py 51) linked_list_is_palindrome_gfg_output.text 52) linked_list_is_palindrome_gfg_testing.py 53) linked_list_node_deletion_from_any_position.txt 54) linked_list_node_deletion_from_end.py 55) linked_list_node_deletion_from_end_output.txt 56) linked_list_node_deletion_from_middle.py 57) linked_list_node_insertion_at_beginning.py 58) linked_list_node_insertion_at_end.py 59) linked_list_node_insertion_at_middel_output.txt 60) linked_list_node_insertion_at_middle.py 61) map.py 62) merge_lists.py 63) mufeez_android_interview.py 64) python_for_loops.py 65) python_for_loops2.py 66) remove_dupliates.py 67) show_dir_and_files.py 68) show_dir_and_files_test.py 69) smarika_urllib_python2.7.10.py 70) while.py 2 directories of /Users/admin/projects/Python/PythonFiles ========================================================== 1) socket_programming 2) wx
Este artículo es una contribución de Rishikesh Agrawani . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA