0
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à người mới đến Python, tôi đang sử dụng v2.7
#Filename:ReverseNumber.py
data=int[raw_input["Enter any number: "]]
print "Reverse of the number: ",
while data!=0:
a=data%10
print a,
data=data/10
Vì vậy, đầu ra sẽ đến như:
Enter any number: 123
Reverse of the number: 321
Nhưng thay vì điều này trong dòng thứ hai, nó đang in thêm một khoảng trống trước mỗi số.
Làm thế nào để vượt qua điều này?
Foo bah
25.1k5 Huy hiệu vàng53 Huy hiệu bạc79 Huy hiệu đồng5 gold badges53 silver badges79 bronze badges
Đã hỏi ngày 5 tháng 10 năm 2011 lúc 6:20Oct 5, 2011 at 6:20
1
Bạn có thể sửa đổi cách tiếp cận của mình theo một số cách:
Tạo danh sách các giá trị của bạn, sau đó tham gia với chúng với một chuỗi trống để in:
out = []
while data != 0:
out.append[data % 10]
data /= 10
print ''.join[map[str, out]]
Bạn có thể bỏ qua toàn bộ bước chuyển đổi số nguyên và chỉ cần đảo ngược chuỗi đến:
data = '123'
print data[-1::-1]
Bạn có thể bỏ qua bước số nguyên và tham gia kết quả đảo ngược:
data = '123'
print ''.join[reversed[data]]
Bạn có thể thêm
Enter any number: 123
Reverse of the number: 321
3 vào các lệnh in của mình cho các số của bạn:while data != 0:
print '\b%d' % [data % 10]
data /= 10
Hy vọng rằng một trong những điều phù hợp với yêu cầu của bạn.
Đã trả lời ngày 5 tháng 10 năm 2011 lúc 6:35Oct 5, 2011 at 6:35
g.d.d.cg.d.d.cg.d.d.c
45.1k8 Huy hiệu vàng98 Huy hiệu bạc110 Huy hiệu đồng8 gold badges98 silver badges110 bronze badges
2
Có một không gian ngầm khi
Enter any number: 123
Reverse of the number: 321
4 được in.Từ các tài liệu Python:
"Một không gian được viết trước mỗi đối tượng được [chuyển đổi và] được viết, trừ khi hệ thống đầu ra tin rằng nó được định vị ở đầu dòng. Đây là trường hợp [1] khi chưa có ký tự nào được ghi vào đầu ra tiêu chuẩn, [2 ] khi ký tự cuối cùng được ghi vào đầu ra tiêu chuẩn là ký tự khoảng trắng ngoại trừ '', hoặc [3] khi thao tác ghi cuối cùng trên đầu ra tiêu chuẩn không phải là một câu lệnh in. "A space is written before each object is [converted and] written, unless the output system believes it is positioned at the beginning of a line. This is the case [1] when no characters have yet been written to standard output, [2] when the last character written to standard output is a whitespace character except ' ', or [3] when the last write operation on standard output was not a print statement."
Vì vậy, hãy thử
print "Reverse of the number:",
Đã trả lời ngày 5 tháng 10 năm 2011 lúc 7:13Oct 5, 2011 at 7:13
Foo bahfoo bahFoo Bah
25.1k5 Huy hiệu vàng53 Huy hiệu bạc79 Huy hiệu đồng5 gold badges53 silver badges79 bronze badges
1
Đã hỏi ngày 5 tháng 10 năm 2011 lúc 6:20
data = int [raw_input ["Enter any number: "]]
if data == 0:
str = "0"
else:
str = ""
while data != 0:
str = "%s%d" % [str, data % 10]
data = data / 10
print "Reverse of the number: %s" % [str]
Bạn có thể sửa đổi cách tiếp cận của mình theo một số cách:Oct 5, 2011 at 6:27
Tạo danh sách các giá trị của bạn, sau đó tham gia với chúng với một chuỗi trống để in:paxdiablo
Bạn có thể bỏ qua toàn bộ bước chuyển đổi số nguyên và chỉ cần đảo ngược chuỗi đến:227 gold badges1549 silver badges1918 bronze badges
Bạn có thể bỏ qua bước số nguyên và tham gia kết quả đảo ngược:
a = ''
while data!=0:
a += data%10
data=data/10
print a
Bạn có thể thêm
Enter any number: 123
Reverse of the number: 321
3 vào các lệnh in của mình cho các số của bạn:Oct 5, 2011 at 6:26
Hy vọng rằng một trong những điều phù hợp với yêu cầu của bạn.Moyshe
Đã trả lời ngày 5 tháng 10 năm 2011 lúc 6:351 gold badge11 silver badges19 bronze badges
3
Không gian cũng được coi là một ký tự bên trong một chuỗi và đôi khi không gian không cần thiết trong chuỗi gây ra kết quả sai.
Ví dụ: thay vì gõ 'Alex', một người đã nhập tên của mình 'Alex & NBSP; '[Xem hai khoảng trống ở cuối chuỗi] và nếu chúng ta so sánh chúng bằng toán tử' == '.'Alex', a person typed his name 'Alex ' [see two spaces at the end of the string], and if we compare them using the '==' operator.
Thí dụ:
if 'Alex' == 'Alex ':
print ["Hello Alex!"]
else:
print ["Not found"]
Đầu ra:
Enter any number: 123
Reverse of the number: 321
0Đầu ra của chương trình trên sẽ là 'không tìm thấy' và bằng cách này, các không gian bổ sung có thể dẫn đến kết quả sai. & NBSP; Do đó, các không gian trống như vậy nên được xóa khỏi chuỗi trước khi được sử dụng. Điều này là có thể bằng cách sử dụng các phương thức rstrip [], lstrip [] và dải [] trong python. Ba chức năng này làm điều tương tự, nhưng có một sự khác biệt nhỏ giữa ba chức năng này.rstrip[], lstrip[] and strip[] methods in Python. These three functions do the same thing, but there is a slight difference between these three functions.
rstrip [] | Phương thức rstrip [] loại bỏ khoảng trắng ở cuối chuỗi. |
Lstrip [] | Phương thức Lstrip [] loại bỏ khoảng trắng ở đầu chuỗi. |
dải [] | Phương thức dải [] loại bỏ khoảng trắng ở đầu và cuối & nbsp; [cả hai cạnh] của một chuỗi. |
Ba phương pháp này không loại bỏ các khoảng trống giữa các chuỗi và thường được sử dụng trong đó đầu vào được lấy từ người dùng.
Thí dụ:
Enter any number: 123
Reverse of the number: 321
1Đầu ra:
Enter any number: 123
Reverse of the number: 321
2