73
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 đang cố gắng kiểm tra xem một chuỗi chỉ chứa các chữ cái, không phải chữ số hoặc ký hiệu.
Ví dụ:
>>> only_letters["hello"]
True
>>> only_letters["he7lo"]
False
Tomerikoo
16.7K15 Huy hiệu vàng38 Huy hiệu bạc54 Huy hiệu đồng15 gold badges38 silver badges54 bronze badges
Đã hỏi ngày 6 tháng 9 năm 2013 lúc 22:17Sep 6, 2013 at 22:17
0
Simple:
if string.isalpha[]:
print["It's all letters"]
if string.isalpha[]:
print["It's all letters"]
3 chỉ đúng nếu tất cả các ký tự trong chuỗi là chữ cái:Trả về true nếu tất cả các ký tự trong chuỗi là chữ cái và có ít nhất một ký tự, sai nếu không.
Demo:
>>> 'hello'.isalpha[]
True
>>> '42hello'.isalpha[]
False
>>> 'hel lo'.isalpha[]
False
Đã trả lời ngày 6 tháng 9 năm 2013 lúc 22:22Sep 6, 2013 at 22:22
Martijn Pieters ♦ Martijn Pieters♦Martijn Pieters
990K276 Huy hiệu vàng3898 Huy hiệu bạc3249 Huy hiệu đồng276 gold badges3898 silver badges3249 bronze badges
7
Hàm
if string.isalpha[]:
print["It's all letters"]
3 hoạt động. I E.if my_string.isalpha[]:
print['it is letters']
Đã trả lời ngày 6 tháng 9 năm 2013 lúc 22:21Sep 6, 2013 at 22:21
CMDCMDcmd
5.62415 Huy hiệu bạc29 Huy hiệu đồng15 silver badges29 bronze badges
2
Đối với những người tìm thấy câu hỏi này thông qua Google, người có thể muốn biết liệu một chuỗi chỉ chứa một tập hợp con của tất cả các chữ cái, tôi khuyên bạn nên sử dụng regexes:
import re
def only_letters[tested_string]:
match = re.match["^[ABCDEFGHJKLM]*$", tested_string]
return match is not None
Đã trả lời ngày 20 tháng 3 năm 2015 lúc 13:25Mar 20, 2015 at 13:25
Martin Thomamartin ThomaMartin Thoma
113K148 Huy hiệu vàng573 Huy hiệu bạc877 Huy hiệu đồng148 gold badges573 silver badges877 bronze badges
1
Bạn có thể tận dụng các biểu thức thường xuyên.
>>> import re
>>> pattern = re.compile["^[a-zA-Z]+$"]
>>> pattern.match["hello"]
>>> pattern.match["hel7lo"]
>>>
Phương thức
if string.isalpha[]:
print["It's all letters"]
5 sẽ trả về một đối tượng if string.isalpha[]:
print["It's all letters"]
6 nếu tìm thấy một trận đấu. Nếu không, nó sẽ trả lại if string.isalpha[]:
print["It's all letters"]
7.Một cách tiếp cận dễ dàng hơn là sử dụng phương pháp
if string.isalpha[]:
print["It's all letters"]
8>>> "Hello".isalpha[]
True
>>> "Hel7lo".isalpha[]
False
if string.isalpha[]:
print["It's all letters"]
9 trả về đúng nếu có ít nhất 1 ký tự trong chuỗi và nếu tất cả các ký tự trong chuỗi là bảng chữ cái.Đã trả lời ngày 7 tháng 1 năm 2019 lúc 7:30Jan 7, 2019 at 7:30
ShailshailShail
8419 Huy hiệu vàng20 Huy hiệu bạc36 Huy hiệu đồng9 gold badges20 silver badges36 bronze badges
Trên thực tế, chúng ta hiện đang ở trong thế giới toàn cầu hóa của thế kỷ 21 và mọi người không còn giao tiếp chỉ bằng cách sử dụng ASCII vì vậy khi câu hỏi về "Có phải thư đó chỉ là" bạn cũng cần đưa vào các thư từ bảng chữ cái không ASCII. Python có một thư viện Unicodedata khá tuyệt, trong số những thứ khác cho phép phân loại các ký tự Unicode:
unicodedata.category['陳']
'Lo'
unicodedata.category['A']
'Lu'
unicodedata.category['1']
'Nd'
unicodedata.category['a']
'Ll'
Các danh mục và chữ viết tắt của chúng được xác định trong tiêu chuẩn Unicode. Từ đây, bạn có thể dễ dàng bạn có thể đưa ra một chức năng như thế này:
def only_letters[s]:
for c in s:
cat = unicodedata.category[c]
if cat not in ['Ll','Lu','Lo']:
return False
return True
Và sau đó:
only_letters['Bzdrężyło']
True
only_letters['He7lo']
False
Như bạn có thể thấy các danh mục danh sách trắng có thể được kiểm soát khá dễ dàng bởi bộ dữ liệu bên trong hàm. Xem bài viết này để thảo luận chi tiết hơn.
Đã trả lời ngày 12 tháng 6 năm 2017 lúc 9:49Jun 12, 2017 at 9:49
Kravietzkravietzkravietz
10.1k2 Huy hiệu vàng31 Huy hiệu bạc27 Huy hiệu đồng2 gold badges31 silver badges27 bronze badges
Đã trả lời ngày 6 tháng 9 năm 2013 lúc 22:24Sep 6, 2013 at 22:24
Có vẻ như mọi người đang nói để sử dụng
>>> 'hello'.isalpha[]
True
>>> '42hello'.isalpha[]
False
>>> 'hel lo'.isalpha[]
False
0.Đây là chức năng một dòng để kiểm tra xem tất cả các ký tự là chữ cái.
if string.isalpha[]:
print["It's all letters"]
0>>> 'hello'.isalpha[]
True
>>> '42hello'.isalpha[]
False
>>> 'hel lo'.isalpha[]
False
1 chấp nhận một sự khác biệt của booleans và trả về >>> 'hello'.isalpha[]
True
>>> '42hello'.isalpha[]
False
>>> 'hel lo'.isalpha[]
False
2 iff Tất cả các booleans là >>> 'hello'.isalpha[]
True
>>> '42hello'.isalpha[]
False
>>> 'hel lo'.isalpha[]
False
2.Tổng quát hơn,
>>> 'hello'.isalpha[]
True
>>> '42hello'.isalpha[]
False
>>> 'hel lo'.isalpha[]
False
1 trả về >>> 'hello'.isalpha[]
True
>>> '42hello'.isalpha[]
False
>>> 'hel lo'.isalpha[]
False
2 nếu các đối tượng trong ITBER của bạn sẽ được coi là >>> 'hello'.isalpha[]
True
>>> '42hello'.isalpha[]
False
>>> 'hel lo'.isalpha[]
False
2. Đây sẽ được coi là >>> 'hello'.isalpha[]
True
>>> '42hello'.isalpha[]
False
>>> 'hel lo'.isalpha[]
False
7- 0
7if string.isalpha[]: print["It's all letters"]
- Cấu trúc dữ liệu trống [tức là:
9]>>> 'hello'.isalpha[] True >>> '42hello'.isalpha[] False >>> 'hel lo'.isalpha[] False
7. [tât nhiên]>>> 'hello'.isalpha[] True >>> '42hello'.isalpha[] False >>> 'hel lo'.isalpha[] False
Đã trả lời ngày 18 tháng 12 năm 2015 lúc 19:52Dec 18, 2015 at 19:52
hlin117hlin117hlin117
19.3K29 Huy hiệu vàng70 Huy hiệu bạc91 Huy hiệu Đồng29 gold badges70 silver badges91 bronze badges
2
[1] Sử dụng str.isalpha [] Khi bạn in chuỗi.str.isalpha[] when you print the string.
[2] Vui lòng kiểm tra chương trình bên dưới để bạn tham khảo:-
if string.isalpha[]:
print["It's all letters"]
1Lưu ý:- Tôi đã kiểm tra ví dụ ở trên trong Ubuntu. I checked above example in Ubuntu.
Đã trả lời ngày 2 tháng 1 năm 2018 lúc 6:50Jan 2, 2018 at 6:50
Một giải pháp khá đơn giản mà tôi đã đưa ra: [Python 3]
if string.isalpha[]:
print["It's all letters"]
2Bạn có thể thêm một không gian trong chuỗi bạn đang kiểm tra nếu bạn muốn khoảng trống được phép.
Vô danh
6994 Huy hiệu vàng15 Huy hiệu bạc34 Huy hiệu đồng4 gold badges15 silver badges34 bronze badges
Đã trả lời ngày 12 tháng 11 năm 2015 lúc 14:45Nov 12, 2015 at 14:45
4