Hướng dẫn python function that takes a string - hàm python nhận một chuỗi

Đây là phiên bản cố định [cảm ơn bạn đã chỉ ra lỗi]fixed version [thank you for pointing out bugs]

def frequency[s]:
    return ''.join[
        [k for k, v in
        sorted[
            reduce[
                lambda d, c: d.update[[[c, d.get[c, 0] + 1]]] or d, 
                list[s], 
                dict[]].items[],
            lambda a, b: cmp[a[1], b[1]],
            reverse=True]]]

Tôi nghĩ rằng việc sử dụng reduce tạo ra sự khác biệt trong sự thay đổi này so với những người khác ...

Trong hành động:

>>> from frequency import frequency
>>> frequency['abbbccddddxxxyyyyyz']
'ydbxcaz'

Điều này bao gồm trích xuất các phím [và đếm chúng] là tốt !!! Một thuộc tính đẹp khác là khởi tạo từ điển trên cùng một dòng :]includes extracting the keys [and counting them] as well!!! Another nice property is the initialization of the dictionary on the same line :]

Ngoài ra: Không bao gồm, chỉ cần xây dựng.no includes, just builtins.

Hàm reduce rất khó để quấn đầu tôi và đặt các giá trị từ điển trong

>>> from frequency import frequency
>>> frequency['abbbccddddxxxyyyyyz']
'ydbxcaz'
1 cũng hơi cồng kềnh trong Python, nhưng, à, nó hoạt động!

Chương này là từ cuốn sách 

Nhận đầu vào chuỗi

Trước khi cuối cùng bạn có thể viết các chương trình thực sự, thì bạn sẽ có thể viết các tập lệnh có thể truy vấn người dùng để biết thêm thông tin. May mắn thay, Python bao gồm một chức năng tích hợp mạnh mẽ, chức năng đầu vào, giúp điều này dễ dàng.input function, which makes this easy.

Tôi sẽ cung cấp cho bạn cú pháp trước và sau đó hiển thị các ví dụ.

string_var = input[prompt_string]

Bản chất của cú pháp này là câu lệnh đầu vào tích hợp cả lấy và tạo ra một chuỗi văn bản. Theo một cách nào đó, khái niệm về chuỗi văn bản rất dễ hiểu; Nó chỉ là những từ ngữ của người Viking trong phần lớn, hay chính xác hơn là các chữ cái và các ký tự khác.input statement both takes and produces a text string. In one way, the concept of text string is easy to understand; it’s just “words” for the most part—or more accurately, letters and other characters.

Ví dụ: chúng ta có thể viết một hàm, chính, mà chúng ta sẽ sử dụng làm kịch bản.

>>>def main[]:
    name1_str = input[’Enter your name: ’]
    name2_str = input[’Enter another: ’]
    name3_str = input[’And another: ’]
    print[’Here are all the candidates: ’]
    print[name1_str, name2_str, name3_str]

>>>main[]
Enter your name: Brian
Enter another: Hillary
And another: Donald
Here are all the candidates:
Brian Hillary Donald

Điều này tự nó không phải là một chương trình rất thú vị. Nó lấy một số văn bản và hiển thị nó trên bảng điều khiển. Nhưng chương trình nhỏ này cho thấy một khả năng quan trọng của Python: khả năng nhắc người dùng cho một chuỗi văn bản và sau đó gán nó cho một biến.

Mặc dù các biến khác cho đến nay đã đề cập đến các giá trị số, các biến này là NAME1, name2 và name3, tất cả đều đề cập đến các chuỗi văn bản trong trường hợp này.

Chính xác thì những gì có thể đi vào một chuỗi văn bản? Về cơ bản, bất cứ điều gì bạn có thể gõ đều có thể đi trong một chuỗi văn bản. Đây là một ví dụ:

>>>in_str = input[’Enter input line: ’]
Enter input line: When I’m 64...
>>>in_str
’When I’m 64...’

Như bạn có thể thấy, chuỗi văn bản có thể chứa chữ số [ký tự chữ số]. Nhưng cho đến khi họ chuyển đổi, họ chỉ là số. Chúng là các biểu diễn chuỗi văn bản của các số, không phải số bạn có thể thực hiện số học trên.

Nếu điều này không rõ ràng, chỉ cần nhớ rằng số 5 chỉ là một ký tự trên bàn phím hoặc trên màn hình. Nhưng số 5 có thể được nhân đôi hoặc tăng gấp ba để tạo ra 10 hoặc 15 và ít liên quan đến các ký tự trên bàn phím.

Đây là một ví dụ:

in_str = ’55’

Nhưng việc gán 55 không có dấu ngoặc kép xung quanh nó làm điều gì đó khác biệt.

n = 55

Sự khác biệt là 55 là một số thực tế, có nghĩa là bạn có thể thêm, trừ, nhân và chia nó. Nhưng khi được đặt trong các dấu ngoặc kép, thì 55 55 là một chuỗi văn bản. Điều đó có nghĩa là nó là một chuỗi bao gồm hai chữ số, mỗi chữ số A 5, được xâu chuỗi lại với nhau.

Một chương trình đơn giản sẽ giúp minh họa sự khác biệt.

>>>def main[]:
    in_str = input[’Enter your age: ’]
    print [’Next year you’ll be’, in_str + 1]

>>>main[]
Enter your age: 29
Error! Incompatible types.

Ối! Chuyện gì đã xảy ra thế? Các ký tự 29 đã được nhập tại dấu nhắc và được lưu trữ dưới dạng chuỗi văn bản, nghĩa là một số 2 theo sau là một số 9 một chuỗi dài hai ký tự. Nhưng điều đó không giống như một con số, mặc dù nó trông giống như một.

Python phàn nàn ngay khi bạn cố gắng thêm chuỗi văn bản vào một số.

in_str + 1

Không có lỗi được báo cáo cho đến khi bạn thực hiện chức năng. Các biến Python don lồng có các loại; Chỉ các đối tượng dữ liệu mới làm. Do đó, cú pháp Python có vẻ lỏng lẻo lúc đầu. Nhưng các loại đối tượng dữ liệu mà không được kiểm tra các lỗi cú pháp, vì không có bản khai báo cáo nào, đã kiểm tra bất cứ khi nào một câu lệnh Python thực sự được thực thi.

Điều này có nghĩa là, trong số những thứ khác, bạn không thể thực hiện số học trên một chuỗi các chữ số như 100, cho đến khi chuỗi đó được chuyển đổi thành định dạng số. Nếu điều này không có ý nghĩa bây giờ, thì đừng lo lắng; Nó sẽ có ý nghĩa khi bạn đọc phần tiếp theo.

Phần tiếp theo cho thấy cách nhận đầu vào và lưu trữ nó dưới dạng một số thay vì chuỗi văn bản.

Tôi có thể chuyển chuỗi cho chức năng Python không?

Bạn có thể gửi bất kỳ loại dữ liệu nào của đối số đến một hàm [chuỗi, số, danh sách, từ điển, v.v.] và nó sẽ được coi là cùng một loại dữ liệu bên trong hàm. [string, number, list, dictionary etc.], and it will be treated as the same data type inside the function.

Làm thế nào để bạn thực hiện một chức năng trong một chuỗi?

Sử dụng phương thức eval [] để tạo một hàm từ chuỗi.Nó chấp nhận hàm dưới dạng chuỗi và chuyển đổi nó thành hàm JavaScript.. It accepts the function in the form of string and converts it to JavaScript function.

Làm thế nào để bạn lấy một biến chuỗi trong Python?

Để tạo một chuỗi, hãy đặt chuỗi các ký tự bên trong các trích dẫn đơn, dấu ngoặc kép hoặc trích dẫn ba và sau đó gán nó cho một biến.Bạn có thể xem xét cách các biến hoạt động trong Python trong hướng dẫn biến Python.Ví dụ: bạn có thể gán một ký tự 'A' cho một biến đơn_quote_character.put the sequence of characters inside either single quotes, double quotes, or triple quotes and then assign it to a variable. You can look into how variables work in Python in the Python variables tutorial. For example, you can assign a character 'a' to a variable single_quote_character .

Hàm chuỗi trong Python là gì?

Chuỗi Python là một chuỗi loại tích hợp.Chuỗi có thể được sử dụng để xử lý dữ liệu văn bản trong Python.Chuỗi Python là trình tự bất biến của các điểm Unicode.Tạo chuỗi là đơn giản nhất và dễ sử dụng trong Python.a built-in type sequence. Strings can be used to handle textual data in Python. Python Strings are immutable sequences of Unicode points. Creating Strings is the simplest and easy to use in Python.

Bài Viết Liên Quan

Chủ Đề