Hướng dẫn one line converter python - python chuyển đổi một dòng

Chuyển đổi mã python nhiều dòng thành một dòng theo cách đơn giản. Dán mã của bạn bên dưới và nhấn chuyển đổi
Paste your code below and hit Convert

Python 2 Python 3 reindent dựa trên chuyển đổi tự động thụt đầu tiên của dòng đầu tiên

Cơ sở lý luận

Dễ dàng sao chép mã python trong một số trường hợp [ví dụ như dán vào vỏ python hoặc thông qua putty]. Nếu bạn thấy mình cần điều này rất nhiều, bạn có thể cân nhắc sử dụng ipython với lệnh

Serialnumber \t Name \t Rick \t Address \t 902, A.street,......
0 hoặc một bản đồ đồ họa như Dreampie

Làm thế nào nó hoạt động

Về cơ bản, nó dán mã đa dòng của bạn với nhau thành một chuỗi được trích dẫn ba và kết thúc nó với EXEC. Để giữ mã hợp pháp, chuỗi được xử lý như sau:

  1. Thoát khỏi tất cả
    Serialnumber \t Name \t Rick \t Address \t 902, A.street,......
    
    1, sau đó thoát
    Serialnumber \t Name \t Rick \t Address \t 902, A.street,......
    
    2.
  2. Trở lại đến 0 thụt dựa trên dòng đầu tiên nếu tùy chọn được chọn. Vì vậy, bạn có thể dán mã thụt trực tiếp.
  3. Wraps
    Serialnumber \t Name \t Rick \t Address \t 902, A.street,......
    
    3 Tuyên bố hoặc chức năng dựa trên tùy chọn phiên bản.

Giới hạn

  1. Sẽ không xóa bình luận và tài liệu. Xử lý đúng những nhu cầu này nhiều công việc hơn.
  2. Tất nhiên không thể kiểm tra mã ban đầu là hợp pháp hoặc thụt lề đúng cách.
  3. Chỉ được kiểm tra bằng mã sao chép ngẫu nhiên từ các công thức nấu ăn Python ... vì vậy vui lòng báo cáo các trường hợp bị thiếu.

Repo

Tôi muốn chuyển đổi chuỗi đa dòng Python thành một dòng. Nếu tôi mở chuỗi trong Vim, tôi có thể thấy ^m ở đầu mỗi dòng. Làm thế nào để tôi xử lý chuỗi để làm tất cả trong một dòng duy nhất với phân tách tab giữa mỗi dòng. Ví dụ trong vim có vẻ như:

Nội phân chính

  • Làm thế nào để bạn chuyển đổi nhiều dòng thành một dòng?
  • Làm thế nào để bạn chuyển đổi một chuỗi nhiều dòng thành một danh sách trong Python?
  • Python: Chia một chuỗi đa dòng thành một danh sách các dòng.
  • Làm thế nào để bạn phá vỡ một chuỗi dài trong Python?

  Serialnumber
 ^MName           Rick
 ^MAddress           902, A.street, Elsewhere

Sử dụng dấu gạch chéo ngược [\] làm ký tự tiếp tục dòng trong Python, dấu gạch chéo ngược [\] là ký tự tiếp tục dòng. Nếu một dấu gạch chéo ngược được đặt ở cuối một dòng, người ta coi là dòng được tiếp tục trên dòng tiếp theo.

Serialnumber \t Name \t Rick \t Address \t 902, A.street,......

Tôi muốn chuyển đổi chuỗi đa dòng Python thành một dòng. Nếu tôi mở chuỗi trong Vim, tôi có thể thấy ^m ở đầu mỗi dòng. Làm thế nào để tôi xử lý chuỗi để làm tất cả trong một dòng duy nhất với phân tách tab giữa mỗi dòng. Ví dụ trong vim có vẻ như:

   somestring.replace[r'\r','\t']

Nội phân chính

Hỏi ngày 1 tháng 8 năm 2013 lúc 21:21Aug 1, 2013 at 21:21

user2441441user2441441user2441441

1.2314 huy hiệu vàng23 Huy hiệu bạc40 Huy hiệu đồng4 gold badges23 silver badges40 bronze badges

Đã xóa câu trả lời trước đây của tôi vì tôi nhận ra nó là sai và tôi cần kiểm tra giải pháp này.

Giả sử rằng bạn đang đọc cái này từ tệp, bạn có thể làm như sau:

f = open['test.txt', 'r']
lines = f.readlines[]
mystr = '\t'.join[[line.strip[] for line in lines]]

Như Ep0 đã nói, ^m đại diện cho '\ r', mà ký tự trả về trong Windows. Thật đáng ngạc nhiên khi bạn sẽ có ^m ở đầu mỗi dòng vì ký tự dòng Windows là \ r \ n. Có ^m ở đầu dòng chỉ ra rằng tệp của bạn chứa \ n \ r thay thế.

Bất kể, mã trên sử dụng danh sách hiểu để lặp qua từng dòng được đọc từ

Serialnumber \t Name \t Rick \t Address \t 902, A.street,......
4. Đối với mỗi
Serialnumber \t Name \t Rick \t Address \t 902, A.street,......
5 trong
Serialnumber \t Name \t Rick \t Address \t 902, A.street,......
6, chúng tôi gọi
Serialnumber \t Name \t Rick \t Address \t 902, A.street,......
7 để loại bỏ bất kỳ ký tự khoảng trắng và không in nào từ các đầu của mỗi dòng. Cuối cùng, chúng tôi gọi
Serialnumber \t Name \t Rick \t Address \t 902, A.street,......
8 trong danh sách kết quả để chèn các tab.

Đã trả lời ngày 1 tháng 8 năm 2013 lúc 23:52Aug 1, 2013 at 23:52

VortityvortityVorticity

4.1342 Huy hiệu vàng28 Huy hiệu bạc46 Huy hiệu đồng2 gold badges28 silver badges46 bronze badges

8

Bạn có thể thay thế "\ r" ký tự bằng "\ t".

my_string.replace["\r", "\t"]

Đã trả lời ngày 1 tháng 8 năm 2013 lúc 21:27Aug 1, 2013 at 21:27

1

Tôi sử dụng splutlines [] để phát hiện tất cả các loại dòng, và sau đó kết hợp mọi thứ lại với nhau. Bằng cách này, bạn không cần phải đoán để thay thế \ r hoặc \ n, v.v.

"".join[somestring.splitlines[]]

Đã trả lời ngày 24 tháng 12 năm 2020 lúc 18:21Dec 24, 2020 at 18:21

Tầm râmrouble

14.8K16 Huy hiệu vàng101 Huy hiệu bạc97 Huy hiệu đồng16 gold badges101 silver badges97 bronze badges

Đó là mã hóa cứng. Nhưng nó đã có tác dụng.

poem='''
If I can stop one heart from breaking,
I shall not live in vain;
If I can ease one life the aching,
Or cool one pain,
Or help one fainting robin
Unto his nest again,
I shall not live in vain.
'''


lst=list[poem]
str=''
for i in lst:
    str+=i
print[str]
lst1=str.split["\n"]
str1=""

for i in lst1:
    str1+=i+" "
str2=str1[:-2]
print[str2]

Vlad

7.6775 Huy hiệu vàng28 Huy hiệu bạc44 Huy hiệu đồng5 gold badges28 silver badges44 bronze badges

Đã trả lời ngày 24 tháng 3 năm 2019 lúc 15:40Mar 24, 2019 at 15:40

Điều này xảy ra về cách VIM diễn giải CR [trở lại vận chuyển], được Windows sử dụng để phân định các dòng mới. Bạn chỉ nên sử dụng một biên tập viên [cá nhân tôi thích VIM]. Đọc này: vim ^m

Đã trả lời ngày 1 tháng 8 năm 2013 lúc 21:24Aug 1, 2013 at 21:24

ep0ep0ep0

7125 Huy hiệu bạc13 Huy hiệu Đồng5 silver badges13 bronze badges

1

Thủ thuật này cũng có thể hữu ích, viết

Serialnumber \t Name \t Rick \t Address \t 902, A.street,......
9 dưới dạng
   somestring.replace[r'\r','\t']
0. Giống :

my_string = my_string.replace[r"\n", "\t"]

Đã trả lời ngày 8 tháng 2 năm 2019 lúc 9:16Feb 8, 2019 at 9:16

Taohidul Hồi giáo Hồi giáo Hồi giáoTaohidul Islam

5.1003 huy hiệu vàng23 Huy hiệu bạc38 Huy hiệu đồng3 gold badges23 silver badges38 bronze badges

Điều này sẽ làm công việc:

def flatten[multiline]:
    lst = multiline.split['\n']
    flat = ''
    for line in lst:
        flat += line.replace[' ', '']+' '
    return flat

Đã trả lời ngày 23 tháng 12 năm 2020 lúc 21:15Dec 23, 2020 at 21:15

EladtaleladtalEladTal

1.5771 Huy hiệu vàng14 Huy hiệu bạc9 Huy hiệu đồng1 gold badge14 silver badges9 bronze badges

Điều này nên làm công việc:
string = """Name           Rick
 Address           902, A.street, Elsewhere"""

single_line = string.replace["\n", "\t"]

Đã trả lời ngày 17 tháng 5 năm 2021 lúc 16:46May 17, 2021 at 16:46

Làm thế nào để bạn chuyển đổi nhiều dòng thành một dòng?

Chọn các dòng bạn muốn tham gia [Ctrl + A để chọn tất cả] Chọn Chỉnh sửa -> Dòng hoạt động -> Tham gia các dòng.Choose Edit -> Line Operations -> Join Lines.

Làm thế nào để bạn chuyển đổi một chuỗi nhiều dòng thành một danh sách trong Python?

Python: Chia một chuỗi đa dòng thành một danh sách các dòng..

Sử dụng str. Split [] và '\ n' để phù hợp với các lần phá vỡ dòng và tạo danh sách ..

str. Splitlines [] cung cấp chức năng tương tự với đoạn trích này ..

Làm cách nào để tạo một dòng một chuỗi trong Python?

Nhân vật dòng mới trong Python là \ n. Nó được sử dụng để chỉ ra sự kết thúc của một dòng văn bản. Bạn có thể in các chuỗi mà không cần thêm một dòng mới có kết thúc =, đó là ký tự sẽ được sử dụng để tách các dòng.end = , which is the character that will be used to separate the lines.

Làm thế nào để bạn phá vỡ một chuỗi dài trong Python?

Sử dụng dấu gạch chéo ngược [\] làm ký tự tiếp tục dòng trong Python, dấu gạch chéo ngược [\] là ký tự tiếp tục dòng. Nếu một dấu gạch chéo ngược được đặt ở cuối một dòng, người ta coi là dòng được tiếp tục trên dòng tiếp theo. In Python, a backslash [ \ ] is a line continuation character. If a backslash is placed at the end of a line, it is considered that the line is continued on the next line.

Bài Viết Liên Quan

Chủ Đề