Tengo un archivo CSV names.csv
First_name, Last_name
Mike, Hughes
James, Tango
, Stoke
Jack,
....etc
Lo que quiero es poder tomar la primera letra de First_name
y la Last_name
completa y mostrarla en la pantalla como nombres de usuario, pero no incluir a las personas con First_name
y {{X3} } la propiedad está vacía. Estoy completamente atrapado, cualquier ayuda sería muy apreciada
import csv
ifile = open('names.csv', "rb")
reader = csv.reader(ifile)
rownum = 0
for row in reader:
if rownum == 0:
header = row
else:
colnum = 0
for col in row:
print '%-8s: %s' % (header[colnum], col)
colnum += 1
rownum += 1
ifile.close()
Intento n. ° 2
import csv
dataFile = open('names.csv','rb')
reader = csv.reader(dataFile)
next(reader, None)
for row in reader:
if (row in reader )
print (row[0])
No he guardado muchos intentos porque ninguno de ellos ha funcionado: S
3 respuestas
import csv
dataFile = open('names.csv','rb')
reader = csv.reader(dataFile, delimiter=',', quoting=csv.QUOTE_NONE)
for row in reader:
if not row[0] or not row[1]:
continue
print (row[0][0] + row[1]).lower()
O
import csv
dataFile = open('names.csv','rb')
reader = csv.reader(dataFile, delimiter=',', quoting=csv.QUOTE_NONE)
[(row[0][0] + row[1]).lower() for row in reader if
row[0] and row[1]]
Tal vez asi
from csv import DictReader
with open('names.csv') as f:
dw = DictReader(f, skipinitialspace=True)
fullnames = filter(lambda n: n['First_name'] and n['Last_name'], dw)
for f in fullnames:
print('{}{}'.format(f['First_name'][0], f['Last_name']))
Tiene encabezados en su csv, así que use un DictReader
y simplemente filtre aquellos cuyos nombres o apellidos estén vacíos y muestre los nombres restantes.
Una vez que obtenga el texto de .csv, puede usar la función split () para dividir el texto por las nuevas líneas. Su texto de muestra es un poco inconsistente, pero si entiendo su pregunta correctamente, puede decir
import csv
dataFile = open('names.csv','rb')
reader = csv.reader(dataFile)
reader = reader.split('\n')
for x in reader
print(reader[x])
O si desea dividirlo por comas, simplemente reemplace '\ n' con ','
Preguntas relacionadas
Nuevas preguntas
python
Python es un lenguaje de programación multipropósito, de tipificación dinámica y de múltiples paradigmas. Está diseñado para ser rápido de aprender, comprender y usar, y hacer cumplir una sintaxis limpia y uniforme. Tenga en cuenta que Python 2 está oficialmente fuera de soporte a partir del 01-01-2020. Aún así, para preguntas de Python específicas de la versión, agregue la etiqueta [python-2.7] o [python-3.x]. Cuando utilice una variante de Python (por ejemplo, Jython, PyPy) o una biblioteca (por ejemplo, Pandas y NumPy), inclúyala en las etiquetas.