1 câu trả lời
Nếu bạn muốn một cái gì đó đơn giản, bạn có thể nhập punctuation
từ chuỗi và sau đó kiểm tra xem chuỗi có chứa bất kỳ ký tự dấu chấm câu nào không.
from string import punctuation
my_text = 'What?'
>>> any[p in my_text for p in punctuation]
True
Thí dụ
while True:
s = raw_input['type a sentence without punctuation: '] # Python 2
if not any[p in s for p in punctuation]:
break
Đã trả lời ngày 7 tháng 3 năm 2016 lúc 8:03Mar 7, 2016 at 8:03
AlexanderalexanderAlexander
Huy hiệu vàng 100K2828 gold badges190 silver badges186 bronze badges
5
Điều đó có vẻ khá tốt nhưng tôi không chắc mã sẽ là gì trong bối cảnh chương trình của tôi
Ngày 9 tháng 3 năm 2016 lúc 19:06
Có lẽ nếu bạn giải thích bối cảnh của giải pháp của bạn, chúng tôi có thể xác định điều đó. Nhưng mã này có thể được gói trong một hàm sẽ được sử dụng trong một số thử nghiệm như: Nếu HasPunction [câu] là đúng, thì cần phải phá vỡ câu ...
Ngày 9 tháng 3 năm 2016 lúc 19:33
-
Điều đó khá tốt cho thời điểm hiện tại. Thnx. Break Break lại làm gì? Nó có dừng chương trình không?
Ngày 9 tháng 3 năm 2016 lúc 19:54
Phá vỡ từ vòng lặp
while
.Ngày 9 tháng 3 năm 2016 lúc 20:16
Vì vậy, ví dụ được mã hóa mà bạn đã đưa ra ... làm thế nào tôi sẽ viết một thông báo lỗi trên đó nếu có dấu câu hoặc nếu không thì chương trình sẽ tiếp tục bước tiếp theo nếu không có dấu câu được phát hiện
Ngày 11 tháng 3 năm 2016 lúc 17:04
Xem thảo luận
Cải thiện bài viết
Lưu bài viết
Xem thảo luận
Cải thiện bài viết
Lưu bài viết
Đọcstring.punctuation
is a pre-initialized string used as string constant. In Python, string.punctuation
will give the all sets of
punctuation.
Bàn luận string.punctuation
Trong Python3,
string.punctuation
là một chuỗi được khởi tạo trước được sử dụng làm hằng số chuỗi. Trong Python,string.punctuation
sẽ cung cấp cho tất cả các bộ chấm câu. Doesn’t take any parameter, since it’s not a function.Cú pháp: String.Punction Return all sets of punctuation.
Tham số: Không lấy bất kỳ tham số nào, vì nó không phải là một hàm.Make sure to import string library function inorder to use string.punctuation
Trả về: Trả về tất cả các bộ chấm câu.
Lưu ý: Đảm bảo nhập chức năng thư viện chuỗi để sử dụng string.punctuation
Mã số 1:
while True:
s = raw_input['type a sentence without punctuation: '] # Python 2
if not any[p in s for p in punctuation]:
break
7while True:
s = raw_input['type a sentence without punctuation: '] # Python 2
if not any[p in s for p in punctuation]:
break
8
2 while True:
s = raw_input['type a sentence without punctuation: '] # Python 2
if not any[p in s for p in punctuation]:
break
3while True:
s = raw_input['type a sentence without punctuation: '] # Python 2
if not any[p in s for p in punctuation]:
break
!"#$%&'[]*+, -./:;?@[\]^_`{|}~
while True:
s = raw_input['type a sentence without punctuation: '] # Python 2
if not any[p in s for p in punctuation]:
break
4while True:
s = raw_input['type a sentence without punctuation: '] # Python 2
if not any[p in s for p in punctuation]:
break
5 while True:
s = raw_input['type a sentence without punctuation: '] # Python 2
if not any[p in s for p in punctuation]:
break
6Code #2 : Given code tests for punctuation.
Lưu ý: Đảm bảo nhập chức năng thư viện chuỗi để sử dụng string.punctuation
Mã số 1:
while True:
s = raw_input['type a sentence without punctuation: '] # Python 2
if not any[p in s for p in punctuation]:
break
2 while True:
s = raw_input['type a sentence without punctuation: '] # Python 2
if not any[p in s for p in punctuation]:
break
3while True:
s = raw_input['type a sentence without punctuation: '] # Python 2
if not any[p in s for p in punctuation]:
break
4while True:
s = raw_input['type a sentence without punctuation: '] # Python 2
if not any[p in s for p in punctuation]:
break
5 while True:
s = raw_input['type a sentence without punctuation: '] # Python 2
if not any[p in s for p in punctuation]:
break
6Đầu ra:
Output:
Punctuation:, Punctuation: ! Punctuation:, Punctuation: ?
Sự cải thiện duy nhất tôi thực hiện cho giải pháp tuyệt vời này là chuyển đổi string.punctuation
thành một tập hợp trước dòng
from string import punctuation
punct = set[punctuation]
name = input[]
if any[char in punct for char in name]:
print["Yup it's there"]
0. Điều này sẽ tăng tốc độ tính toán một chút so với việc kiểm tra tư cách thành viên trong một chuỗi.from string import punctuation
punct = set[punctuation]
name = input[]
if any[char in punct for char in name]:
print["Yup it's there"]
Đôi khi, chúng ta có thể muốn chia một câu thành một danh sách các từ.
Trong những trường hợp như vậy, trước tiên chúng ta có thể muốn làm sạch chuỗi và xóa tất cả các dấu chấm câu. Dưới đây là một ví dụ về cách nó được thực hiện.
Mã nguồn
# define punctuation
punctuations = '''![]-[]{};:'"\,./?@#$%^&*_~'''
my_str = "Hello!!!, he said ---and went."
# To take input from the user
# my_str = input["Enter a string: "]
# remove punctuation from the string
no_punct = ""
for char in my_str:
if char not in punctuations:
no_punct = no_punct + char
# display the unpunctuated string
print[no_punct]
Đầu ra
Hello he said and went
Trong chương trình này, trước tiên chúng tôi xác định một chuỗi các dấu chấm câu. Sau đó, chúng tôi lặp lại chuỗi được cung cấp bằng cách sử dụng vòng lặp
!"#$%&'[]*+, -./:;?@[\]^_`{|}~4.
Trong mỗi lần lặp, chúng tôi kiểm tra xem ký tự có phải là dấu chấm câu hoặc không sử dụng bài kiểm tra thành viên không. Chúng tôi có một chuỗi trống mà chúng tôi thêm [concatenate] ký tự nếu nó không bị dấu câu. Cuối cùng, chúng tôi hiển thị chuỗi được làm sạch.