Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

xóa dòng trống được in từ đầu ra truy vấn hive bằng cách sử dụng python

Thông thường, bạn sẽ mở tệp đầu vào và ghi các dòng không trống vào tệp thứ hai:

with open('file.tsv') as infile, open('filtered_file.tsv', 'w') as outfile:
    for line in infile:
        if line.strip():
            outfile.write(line)

Nếu bạn muốn lọc tệp tại chỗ, bạn có thể sử dụng FileInput với inplace tùy chọn:

import fileinput
for line in fileinput.FileInput("infile", inplace=1):
    if line.strip():
        print line

tuy nhiên, điều này sử dụng tệp trung gian và có thể không hoạt động trong các trường hợp dung lượng ổ đĩa thấp.

Để lọc tệp tại chỗ mà không phân bổ thêm bất kỳ dung lượng ổ đĩa nào, bạn có thể thử một cái gì đó như sau:

with open('file.tsv', 'r+') as infile:
    read_pos = write_pos = 0
    line = infile.readline()
    while line:
        read_pos += len(line)
        if line.strip():
            infile.seek(write_pos)
            infile.write(line)
            write_pos += len(line)
        infile.seek(read_pos)
        line = infile.readline()
    # update file size to the new, possibly reduced, size
    infile.truncate(write_pos)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. truy vấn mysql HIỂN THỊ CÁC CỘT TỪ bảng như 'colmunname':câu hỏi

  2. CẢNH BÁO:Không nên thiết lập kết nối SSL mà không có xác minh danh tính của máy chủ

  3. xóa dòng trống được in từ đầu ra truy vấn hive bằng cách sử dụng python

  4. SQL - tổng của một số hàng, trừ đi tổng của các hàng khác

  5. Hiển thị kết quả truy vấn SQL trong php