Tôi đang viết chương trình CL yêu cầu người dùng nhập nhận xét, tuy nhiên có vấn đề phát sinh khi ai đó nhập sai nhận xét đã nói
comment = raw_input[Enter comment: ]
Đầu vào của người dùng. Archie^?ve thử nghiệm, nơi ^?
Vậy có cách nào để nhận đầu vào cho phép lỗi người dùng không, vì vậy tôi không nhận được những thứ như "Thử nghiệm lưu trữ"
con trăn
0 0
Đăng lại
- 4 Người đóng góp
- 6 Trả lời
- 3K Lượt xem
- 21 giờ Khoảng thời gian thảo luận
- Bài đăng mới nhất Bài đăng mới nhất của Mr Tk
Câu trả lời được đề xuất
Đã trả lời bởi cghtkh 9 trong một
Điều này có thể là do thuộc tính thiết bị đầu cuối của bạn.
Hãy thử đặt 'stty erase ^H' trong thiết bị đầu cuối của bạn.
Đã trả lời bởi cghtkh 9 trong một
Ký tự xóa lùi của bạn có thể khác tùy thuộc vào ánh xạ bàn phím.
Thử lại bằng cách sử dụng 'stty erase Ctrl-v
Lưu ý. Ctrl-v là 2 phím được nhấn cùng nhau, sau đó thả cả hai phím và nhấn "backspace".
Tất cả 6 câu trả lời
cghtkh 9 Áp phích dành cho lứa tuổi thiếu niên Điều này có thể là do thuộc tính thiết bị đầu cuối của bạn. 0 0 Đăng lại Mr Tk 0 Áp phích dành cho người mới Chúc mừng cghtkh. Tôi đã thử điều này và không may mắn, tôi vẫn có hành vi giống như trước đây 0 0 Đăng lại
Hãy thử đặt 'stty erase ^H' trong thiết bị đầu cuối của bạn.
cghtkh 9 Áp phích dành cho lứa tuổi thiếu niên
12 năm trướcKý tự xóa lùi của bạn có thể khác tùy thuộc vào ánh xạ bàn phím.
Thử lại bằng cách sử dụng 'stty erase Ctrl-v
Lưu ý. Ctrl-v là 2 phím được nhấn cùng nhau, sau đó thả cả hai phím và nhấn "backspace".
1 0
Đăng lại
Gribouillis đã nhận xét. đã giải quyết vấn đề +4
Gribouillis 1.391 Trình thám hiểm lập trình Đồng nghiệp nhóm
12 năm trướcXin chào
Tôi có câu hỏi về sự cố tôi đang gặp phải với hàm raw_input trong python
Tôi đang viết chương trình CL yêu cầu người dùng nhập nhận xét, tuy nhiên có vấn đề phát sinh khi ai đó nhập sai nhận xét đã nói
comment = raw_input[Enter comment: ]
Đầu vào của người dùng. Archie^?ve thử nghiệm, nơi ^?
Vậy có cách nào để nhận đầu vào cho phép lỗi người dùng không, vì vậy tôi không nhận được những thứ như "Thử nghiệm lưu trữ"
Nếu hệ điều hành của bạn là linux, bạn có thể thử thêm import readline
cho phép chỉnh sửa dòng vào chương trình của mình. Trong windows, có những thay thế cho mô-đun readline nhưng tôi đã không kiểm tra chúng [http. //ipython. scipy. org/moin/PyReadline/Giới thiệu chẳng hạn. Nếu không, google là bạn của bạn]
Trong hướng dẫn này, chúng ta sẽ học cách kiểm tra xem một chuỗi có chứa ký tự đặc biệt nào không bằng Python. Chuỗi trong Python là một chuỗi các ký tự được bao bọc bên trong dấu nháy đơn, kép hoặc ba. Ký tự đặc biệt là ký tự không phải là bảng chữ cái hay số. Các ký hiệu, dấu trọng âm và dấu chấm câu được coi là ký tự đặc biệt
[ @ _. # $ % ^ & * [ ] < > ? . { } ~. ] là một số ký tự đặc biệt
Chúng ta phải viết một chương trình sẽ kiểm tra các ký tự đặc biệt như vậy trong chuỗi đã cho và sẽ chỉ chấp nhận những chuỗi không có bất kỳ ký tự đặc biệt nào
Nhìn vào các ví dụ để hiểu định dạng đầu vào và đầu ra
Đầu vào. "Xin chào. "
đầu ra. chuỗi không được chấp nhận
Đầu vào. "xin chào123"
đầu ra. chuỗi được chấp nhận
Để thực hiện tác vụ này, chúng tôi sẽ tạo một biểu thức chính quy bằng cách sử dụng compile[] sẽ có tất cả các ký tự đặc biệt mà chúng tôi không muốn trong chuỗi của mình. Sau đó, sử dụng phương thức search[], chúng ta sẽ tìm kiếm xem có ký tự đặc biệt nào trong chuỗi hay không. Nếu không tìm thấy ký tự nào, phương thức search[] sẽ trả về Không và sau đó chúng ta có thể in ra rằng chuỗi được chấp nhận
thuật toán
Bước 1- Nhập lại mô-đun
Bước 2- Định nghĩa hàm kiểm tra ký tự đặc biệt
Bước 3- Tạo biểu thức chính quy của tất cả các ký tự đặc biệt
Bước 4- Kiểm tra xem biểu thức này có trong chuỗi không
Bước 5- Nếu không tìm thấy trả về chuỗi được chấp nhận
Bước 6- Khác trả lại rằng chuỗi được chấp nhận
Chương trình Python
Trong chương trình này, chúng ta đã sử dụng mô đun re để sử dụng phương thức compile[] và search[]. Chúng tôi sẽ nhập mô-đun re vào chương trình của chúng tôi. Mô-đun Python lại cung cấp hỗ trợ đầy đủ cho các biểu thức chính quy trong Python
import re
def find[string]:
special_char=re.compile['[@_!$%^&*[]?/\|}{~:]#']
if special_char.search[string] == None:
return "string is accepted"
else:
return "string not accpeted"
s="Hello15"
print[s]
print[find[s]]
Chuỗi Hello15
được chấp nhận
Sự kết luận
Trong hướng dẫn này, chúng ta đã biết cách kiểm tra xem một chuỗi có ký tự đặc biệt hay không và chỉ chấp nhận những chuỗi không có bất kỳ ký tự đặc biệt nào