Hướng dẫn how do i concatenate a date to a string in python? - làm cách nào để nối ngày với một chuỗi trong python?

5

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi là một người mới và đã tự hỏi liệu có cách đơn giản hơn để kết hợp thời gian vào một chuỗi trong một chức năng ghi không? Dưới đây là mã của tôi chạy Windows XP với ActivePy 2.6:

from time import clock filename = "c:\Python\\test.txt" try: tm = clock() print "filename: " + filename fsock = open(filename, "a") try: fsock.write(tm + 'test success\n ') finally: fsock.close() except IOError: print "file not found" print file(filename).read() C:\Python>python test.py filename: c:\Python\test.txt Traceback (most recent call last): File "test.py", line 8, in <module> fsock.write(tm + 'test success\n ') TypeError: unsupported operand type(s) for +: 'float' and 'str' C:\Python>

John Kugelman

338K67 Huy hiệu vàng509 Huy hiệu bạc560 Huy hiệu Đồng67 gold badges509 silver badges560 bronze badges

Hỏi ngày 8 tháng 8 năm 2011 lúc 18:10Aug 8, 2011 at 18:10

>>> import time >>> tm = time.strftime('%a, %d %b %Y %H:%M:%S %Z(%z)') >>> tm 'Mon, 08 Aug 2011 20:14:59 CEST(+0200)' 0 Trả về một biểu diễn có thể đọc được bằng máy của thời lượng mà hệ thống đang chạy.

Để có được một biểu diễn có thể đọc được của con người (một chuỗi) của thời gian tường hiện tại, hãy sử dụng >>> import time >>> tm = time.strftime('%a, %d %b %Y %H:%M:%S %Z(%z)') >>> tm 'Mon, 08 Aug 2011 20:14:59 CEST(+0200)' 1:

>>> import time >>> tm = time.strftime('%a, %d %b %Y %H:%M:%S %Z(%z)') >>> tm 'Mon, 08 Aug 2011 20:14:59 CEST(+0200)'

Đã trả lời ngày 8 tháng 8 năm 2011 lúc 18:15Aug 8, 2011 at 18:15

Phihagphihagphihag

269K68 Huy hiệu vàng441 Huy hiệu bạc464 Huy hiệu đồng68 gold badges441 silver badges464 bronze badges

Sử dụng Pythons str.format

fsock.write('{0} test success\n'.format(tm))

Đã trả lời ngày 8 tháng 8 năm 2011 lúc 18:13Aug 8, 2011 at 18:13

GWWGWWGWW

42.1k11 Huy hiệu vàng110 Huy hiệu bạc107 Huy hiệu đồng11 gold badges110 silver badges107 bronze badges

Bạn nên chuyển đổi thành chuỗi trước bằng str ():

str(tm) + 'test success\n'

Đã trả lời ngày 8 tháng 8 năm 2011 lúc 18:13Aug 8, 2011 at 18:13

GWWGWWFacundo Casco

42.1k11 Huy hiệu vàng110 Huy hiệu bạc107 Huy hiệu đồng6 gold badges44 silver badges63 bronze badges

Bạn nên chuyển đổi thành chuỗi trước bằng str ():

>>> import time >>> tm = time.strftime('%a, %d %b %Y %H:%M:%S %Z(%z)') >>> tm 'Mon, 08 Aug 2011 20:14:59 CEST(+0200)' 3

Facundo Cascofacundo Casco

>>> import time >>> tm = time.strftime('%a, %d %b %Y %H:%M:%S %Z(%z)') >>> tm 'Mon, 08 Aug 2011 20:14:59 CEST(+0200)' 4

9.6456 Huy hiệu vàng44 Huy hiệu bạc63 Huy hiệu Đồng

>>> import time >>> tm = time.strftime('%a, %d %b %Y %H:%M:%S %Z(%z)') >>> tm 'Mon, 08 Aug 2011 20:14:59 CEST(+0200)' 5

Điều tốt nhất cần làm là sử dụng phương thức chuỗi >>> import time >>> tm = time.strftime('%a, %d %b %Y %H:%M:%S %Z(%z)') >>> tm 'Mon, 08 Aug 2011 20:14:59 CEST(+0200)' 2:Aug 8, 2011 at 18:14

Cách làm điều này cũ hơn sẽ là:

str = '%f test success\n' % tm fsock.write(str)

Cuối cùng, bạn có thể làm:

Điều tốt nhất cần làm là sử dụng phương thức chuỗi >>> import time >>> tm = time.strftime('%a, %d %b %Y %H:%M:%S %Z(%z)') >>> tm 'Mon, 08 Aug 2011 20:14:59 CEST(+0200)' 2:Aug 8, 2011 at 18:14

Cách làm điều này cũ hơn sẽ là:richardolsson

Cuối cùng, bạn có thể làm:1 gold badge16 silver badges19 bronze badges

Kết hợp chuỗi là một hoạt động rất phổ biến trong lập trình. Sự kết hợp chuỗi python có thể được thực hiện bằng cách sử dụng nhiều cách khác nhau. Hướng dẫn này nhằm mục đích khám phá các cách khác nhau để nối các chuỗi trong một chương trình Python.

Sự kết hợp chuỗi python

Chúng ta có thể thực hiện kết nối chuỗi bằng cách sử dụng các cách sau:

  • Sử dụng toán tử +
  • Sử dụng phương thức tham gia ()
  • Sử dụng nhà điều hành %
  • Sử dụng hàm định dạng ()
  • Sử dụng chuỗi F (nội suy chuỗi theo nghĩa đen)

Concatenation chuỗi bằng cách sử dụng toán tử +

Đây là cách đơn giản nhất để kết hợp chuỗi. Hãy cùng nhìn vào một ví dụ đơn giản.

s1 = 'Apple' s2 = 'Pie' s3 = 'Sauce' s4 = s1 + s2 + s3 print(s4)

Đầu ra: >>> import time >>> tm = time.strftime('%a, %d %b %Y %H:%M:%S %Z(%z)') >>> tm 'Mon, 08 Aug 2011 20:14:59 CEST(+0200)' 6 Hãy cùng xem xét một ví dụ khác, nơi chúng ta sẽ nhận được hai chuỗi từ đầu vào của người dùng và kết hợp chúng.

s1 = input('Please enter the first string:\n') s2 = input('Please enter the second string:\n') print('Concatenated String =', s1 + s2)

Output:

Please enter the first string: Hello Please enter the second string: World Concatenated String = HelloWorld

Nó rất dễ sử dụng + toán tử để nối chuỗi. Tuy nhiên, các đối số phải là một chuỗi.

>>>'Hello' + 4 Traceback (most recent call last): File "<input>", line 1, in TypeError: can only concatenate str (not "int") to str

Chúng ta có thể sử dụng hàm str () để có được biểu diễn chuỗi của một đối tượng. Hãy cùng xem cách kết hợp một chuỗi vào số nguyên hoặc đối tượng khác.

C:\Python>python test.py filename: c:\Python\test.txt Traceback (most recent call last): File "test.py", line 8, in <module> fsock.write(tm + 'test success\n ') TypeError: unsupported operand type(s) for +: 'float' and 'str' C:\Python> 0

Đầu ra:

C:\Python>python test.py filename: c:\Python\test.txt Traceback (most recent call last): File "test.py", line 8, in <module> fsock.write(tm + 'test success\n ') TypeError: unsupported operand type(s) for +: 'float' and 'str' C:\Python> 1

Vấn đề lớn nhất với toán tử + là chúng ta có thể thêm bất kỳ dấu phân cách hoặc dấu phân cách nào giữa các chuỗi. Ví dụ: nếu chúng ta phải kết hợp với Hello Hello và thế giới với một dấu cách phân tách khoảng trắng, chúng ta sẽ phải viết nó dưới dạng >>> import time >>> tm = time.strftime('%a, %d %b %Y %H:%M:%S %Z(%z)') >>> tm 'Mon, 08 Aug 2011 20:14:59 CEST(+0200)' 7.

Chuỗi nối

Chúng ta có thể sử dụng hàm Jop () để kết hợp chuỗi với một dấu phân cách. Nó rất hữu ích khi chúng ta có một chuỗi các chuỗi, ví dụ như danh sách hoặc tuple của chuỗi. Nếu bạn không muốn một dấu phân cách, thì hãy sử dụng hàm Jop () với một chuỗi trống.

C:\Python>python test.py filename: c:\Python\test.txt Traceback (most recent call last): File "test.py", line 8, in <module> fsock.write(tm + 'test success\n ') TypeError: unsupported operand type(s) for +: 'float' and 'str' C:\Python> 2

Output:

C:\Python>python test.py filename: c:\Python\test.txt Traceback (most recent call last): File "test.py", line 8, in <module> fsock.write(tm + 'test success\n ') TypeError: unsupported operand type(s) for +: 'float' and 'str' C:\Python> 3

Concatenation chuỗi bằng cách sử dụng toán tử %

Chúng ta có thể sử dụng toán tử % cho định dạng chuỗi, nó cũng có thể được sử dụng để nối chuỗi. Nó rất hữu ích khi chúng tôi muốn kết hợp các chuỗi và thực hiện định dạng đơn giản.

C:\Python>python test.py filename: c:\Python\test.txt Traceback (most recent call last): File "test.py", line 8, in <module> fsock.write(tm + 'test success\n ') TypeError: unsupported operand type(s) for +: 'float' and 'str' C:\Python> 4

Output:

C:\Python>python test.py filename: c:\Python\test.txt Traceback (most recent call last): File "test.py", line 8, in <module> fsock.write(tm + 'test success\n ') TypeError: unsupported operand type(s) for +: 'float' and 'str' C:\Python> 5

Chuỗi kết nối bằng cách sử dụng hàm định dạng ()

Chúng ta cũng có thể sử dụng hàm định dạng chuỗi () để nối chuỗi và định dạng.

C:\Python>python test.py filename: c:\Python\test.txt Traceback (most recent call last): File "test.py", line 8, in <module> fsock.write(tm + 'test success\n ') TypeError: unsupported operand type(s) for +: 'float' and 'str' C:\Python> 6

Output:

C:\Python>python test.py filename: c:\Python\test.txt Traceback (most recent call last): File "test.py", line 8, in <module> fsock.write(tm + 'test success\n ') TypeError: unsupported operand type(s) for +: 'float' and 'str' C:\Python> 7

Chức năng Python String Format () rất mạnh, sử dụng nó chỉ để nối các chuỗi không phải là cách sử dụng đúng đắn.

Kết nối chuỗi bằng cách sử dụng chuỗi f

Nếu bạn đang sử dụng Python 3.6+, bạn cũng có thể sử dụng chuỗi F để nối chuỗi. Nó là một cách mới để định dạng chuỗi và được giới thiệu trong PEP 498 - nội suy chuỗi theo nghĩa đen.

C:\Python>python test.py filename: c:\Python\test.txt Traceback (most recent call last): File "test.py", line 8, in <module> fsock.write(tm + 'test success\n ') TypeError: unsupported operand type(s) for +: 'float' and 'str' C:\Python> 8

Output:

C:\Python>python test.py filename: c:\Python\test.txt Traceback (most recent call last): File "test.py", line 8, in <module> fsock.write(tm + 'test success\n ') TypeError: unsupported operand type(s) for +: 'float' and 'str' C:\Python> 9

Python F-String sạch hơn và dễ ghi hơn khi so sánh với hàm định dạng (). Nó cũng gọi hàm str () khi một đối số đối tượng được sử dụng làm thay thế trường.

Sự kết luận

Định dạng chuỗi Python có thể được thực hiện theo nhiều cách. Sử dụng chúng dựa trên yêu cầu của bạn. Nếu bạn phải nối trình tự chuỗi với một hàm được phân định, thì hãy sử dụng hàm nối (). Nếu một số định dạng cũng được yêu cầu với sự kết hợp, thì hãy sử dụng hàm định dạng () hoặc chuỗi f. Lưu ý rằng chuỗi F có thể được sử dụng với các phiên bản Python 3.6 trở lên.

Bạn có thể kiểm tra toàn bộ tập lệnh Python và nhiều ví dụ về Python từ Kho lưu trữ GitHub của chúng tôi.

Làm cách nào để kết nối một datetime vào một chuỗi trong Python?

Python: Cách chuyển đổi đối tượng DateTime thành chuỗi bằng cách sử dụng DateTime ...
TimestampStr = datetimeObj. Strftime ("%d-%b-%y (%h:%m:%S.%f)") ....
datetimeObj = DateTime. bây giờ() ... .
datest = datetimeObj. Strftime (" %d %b %y") ....
Timestr = datetimeObj. Strftime ("%H:%m:%S.%f") ....
datest = datetimeObj ..

Cách tốt nhất để nối các chuỗi trong Python là gì?

Một trong những phương pháp phổ biến nhất để kết hợp hai chuỗi trong Python (hoặc nhiều hơn) là sử dụng toán tử +.Toán tử +, khi được sử dụng với hai chuỗi, kết hợp các chuỗi với nhau để tạo thành một.using the + operator. The + operator, when used with two strings, concatenates the strings together to form one.

Các cách khác nhau để kết hợp dữ liệu trong Python là gì?

Chúng ta có thể thực hiện kết nối chuỗi bằng cách sử dụng các cách sau:..
Sử dụng + toán tử ..
Sử dụng phương thức tham gia () ..
Sử dụng nhà điều hành % ..
Sử dụng hàm định dạng () ..
Sử dụng chuỗi F (nội suy chuỗi theo nghĩa đen).

Có một chức năng liên kết trong Python?

Hàm Concat () trong Python.gấu trúc.Hàm Concat () thực hiện tất cả các hoạt động nặng thực hiện các hoạt động nối cùng với các đối tượng Pandas Axis OD trong khi thực hiện logic đặt tùy chọn (liên kết hoặc giao lộ) của các chỉ mục (nếu có) trên các trục khác.. pandas. concat() function does all the heavy lifting of performing concatenation operations along with an axis od Pandas objects while performing optional set logic (union or intersection) of the indexes (if any) on the other axes.

Chủ đề