Câu hỏi và câu trả lời phỏng vấn Python
1] What is Python? What are the benefits of using Python?
Ans. Python là ngôn ngữ lập trình với các đối tượng, mô-đun, luồng, ngoại lệ và quản lý bộ nhớ tự động. Lợi ích của python là nó đơn giản và dễ dàng, có thể di chuyển, có thể mở rộng, cấu trúc dữ liệu tích hợp và nó là một mã nguồn mở
2] PEP 8 là gì?
Ans. PEP 8 là một quy ước mã hóa, một bộ khuyến nghị, về cách viết mã Python của bạn dễ đọc hơn
3] Tẩy và tẩy là gì?
trả lời. Mô-đun Pickle chấp nhận bất kỳ đối tượng Python nào và chuyển đổi nó thành một biểu diễn chuỗi và đưa nó vào một tệp bằng cách sử dụng chức năng kết xuất, quá trình này được gọi là pickling. Trong khi quá trình truy xuất các đối tượng Python gốc từ biểu diễn chuỗi được lưu trữ được gọi là giải nén
4] Python được hiểu như thế nào?
trả lời. Python language is an interpreted language. Chương trình Python chạy trực tiếp từ mã nguồn. Nó chuyển đổi mã nguồn do lập trình viên viết thành ngôn ngữ trung gian, ngôn ngữ này lại được dịch sang ngôn ngữ máy để thực thi
5] How memory is managed in Python?
trả lời. Bộ nhớ Python được quản lý bởi không gian heap riêng của Python. Tất cả các đối tượng Python và cấu trúc dữ liệu được đặt trong một đống riêng. Lập trình viên không có quyền truy cập vào vùng riêng tư này và trình thông dịch sẽ xử lý vùng riêng tư Python này
Việc phân bổ không gian heap Python cho các đối tượng Python được thực hiện bởi trình quản lý bộ nhớ Python. API cốt lõi cấp quyền truy cập vào một số công cụ để lập trình viên viết mã
Python cũng có một trình thu gom rác sẵn có, giúp tái chế tất cả bộ nhớ không sử dụng và giải phóng bộ nhớ và cung cấp bộ nhớ cho không gian heap
6] Các công cụ giúp tìm lỗi hoặc thực hiện phân tích tĩnh là gì?
trả lời. PyChecker là một công cụ phân tích tĩnh phát hiện lỗi trong mã nguồn Python và cảnh báo về kiểu dáng và độ phức tạp của lỗi. Pylint is another tool that verifies whether the module meets the coding standard
7] Trình trang trí Python là gì?
trả lời. Trình trang trí Python là một thay đổi cụ thể mà chúng tôi thực hiện theo cú pháp Python để thay đổi chức năng một cách dễ dàng
8] Sự khác biệt giữa danh sách và bộ dữ liệu là gì?
trả lời. Sự khác biệt giữa danh sách và bộ dữ liệu là danh sách có thể thay đổi trong khi bộ dữ liệu thì không. Tuple can be hashed for e. g làm khóa cho từ điển
9] How are arguments passed by value or by reference?
Ans. Mọi thứ trong Python là một đối tượng và tất cả các biến giữ tham chiếu đến các đối tượng. Các giá trị tham chiếu là theo các chức năng; . Tuy nhiên, bạn có thể thay đổi các đối tượng nếu nó có thể thay đổi được
10] Khả năng hiểu Dict và List là gì?
trả lời. They are syntax constructions to ease the creation of a Dictionary or List based on existing iterable
11] What are the built-in type does python provides?
Ans. There are mutable and Immutable types of Pythons built in types Mutable built-in types
- Danh sách
- bộ
- Dictionaries
Các loại tích hợp không thể thay đổi
- Strings
- bộ dữ liệu
- Numbers
12] What is namespace in Python?
trả lời. In Python, every name introduced has a place where it lives and can be hooked for. This is known as namespace. It is like a box where a variable name is mapped to the object placed. Whenever the variable is searched out, this box will be searched, to get corresponding object
13] What is lambda in Python?
Ans. It is a single expression anonymous function often used as inline function
14] Why lambda forms in python does not have statements?
Ans. A lambda form in python does not have statements as it is used to make new function object and then return them at runtime
15] What is pass in Python?
Ans. Pass means, no-operation Python statement, or in other words it is a place holder in compound statement, where there should be a blank left and nothing has to be written there
16] In Python what are iterators?
Ans. In Python, iterators are used to iterate a group of elements, containers like list
17] What is unittest in Python?
trả lời. A unit testing framework in Python is known as unittest. It supports sharing of setups, automation testing, shutdown code for tests, aggregation of tests into collections etc
18] In Python what is slicing?
Ans. A mechanism to select a range of items from sequence types like list, tuple, strings etc. is known as slicing
19] What are generators in Python?
Ans. The way of implementing iterators are known as generators. It is a normal function except that it yields expression in the function
20] What is docstring in Python?
Ans. A Python documentation string is known as docstring, it is a way of documenting Python functions, modules and classes
21] How can you copy an object in Python?
Ans. To copy an object in Python, you can try copy. copy [] or copy. deepcopy[] for the general case. You cannot copy all objects but most of them
22] What is negative index in Python?
Ans. Python sequences can be index in positive and negative numbers. For positive index, 0 is the first index, 1 is the second index and so forth. For negative index, [-1] is the last index and [-2] is the second last index and so forth
23] How you can convert a number to a string?
Ans. In order to convert a number into a string, use the inbuilt function str[]. If you want a octal or hexadecimal representation, use the inbuilt function oct[] or hex[]
24] What is the difference between Xrange and range?
Ans. Xrange returns the xrange object while range returns the list, and uses the same memory and no matter what the range size is
25] What is module and package in Python?
Ans. In Python, module is the way to structure program. Each Python program file is a module, which imports other modules like objects and attributes
The folder of Python program is a package of modules. Một gói có thể có các mô-đun hoặc thư mục con
26] Đề cập đến các quy tắc cho biến cục bộ và biến toàn cục trong Python là gì?
trả lời. Biến cục bộ. Nếu một biến được gán một giá trị mới ở bất kỳ đâu trong phần thân của hàm, thì biến đó được coi là cục bộ
biến toàn cầu. Những biến chỉ được tham chiếu bên trong một hàm là toàn cục
27] Làm cách nào bạn có thể chia sẻ các biến toàn cục giữa các mô-đun?
trả lời. Để chia sẻ các biến toàn cục giữa các mô-đun trong một chương trình, hãy tạo một mô-đun đặc biệt. Nhập mô-đun cấu hình trong tất cả các mô-đun của ứng dụng của bạn. Mô-đun sẽ có sẵn dưới dạng biến toàn cục trên các mô-đun
28] Giải thích làm thế nào bạn có thể làm cho một Tập lệnh Python có thể thực thi được trên Unix?
Ans. To make a Python Script executable on Unix, you need to do two things,
- Chế độ của tập lệnh phải được thực thi và
- The first line must begin with # [ #. /usr/local/bin/trăn]
29] Giải thích cách xóa một tệp trong Python?
trả lời. Bằng cách sử dụng lệnh os. xóa [tên tệp] hoặc os. hủy liên kết [tên tệp]
30] Giải thích cách tạo số ngẫu nhiên trong Python?
trả lời. To generate random numbers in Python, you need to import command as
import random
random. random[]
This returns a random floating point number in the range [0,1]
31] Explain how can you access a module written in Python from C?
Ans. You can access a module written in Python from C by following method,
Module = =PyImport_ImportModule[“”];
32] Mention the use of // operator in Python?
Ans. It is a Floor Divisionoperator , which is used for dividing two operands with the result as quotient showing only digits before the decimal point. For instance, 10//5 = 2 and 10. 0//5. 0 = 2. 0
33] Mention five benefits of using Python?
Ans. Python comprises of a huge standard library for most Internet platforms like Email, HTML, etc
Python does not require explicit memory management as the interpreter itself allocates the memory to new variables and free them automatically
Provide easy readability due to use of square brackets
Easy-to-learn for beginners
Having the built-in data types saves programming time and effort from declaring variables
34] Mention the use of the split function in Python?
Ans. The use of the split function in Python is that it breaks a string into shorter strings using the defined separator. It gives a list of all words present in the string
35] Explain what is Flask & its benefits?
Ans. Flask is a web micro framework for Python based on “Werkzeug, Jinja 2 and good intentions” BSD licensed. Werkzeug and jingja are two of its dependencies
Flask is part of the micro-framework. Which means it will have little to no dependencies on external libraries. It makes the framework light while there is little dependency to update and less security bugs
36] Mention what is the difference between Django, Pyramid, and Flask?
Ans. Flask is a “microframework” primarily build for a small application with simpler requirements. In flask, you have to use external libraries. Flask is ready to use
Pyramid are build for larger applications. It provides flexibility and lets the developer use the right tools for their project. The developer can choose the database, URL structure, templating style and more. Pyramid is heavy configurable
Like Pyramid, Django can also used for larger applications. It includes an ORM
37] Mention what is Flask-WTF and what are their features?
Ans. Flask-WTF offers simple integration with WTForms. Features include for Flask WTF are
- Integration with wtforms
- Secure form with csrf token
- Global csrf protection
- Internationalization integration
- Recaptcha supporting
- File upload that works with Flask Uploads
38] Explain what is the common way for the Flask script to work?
Ans. The common way for the flask script to work is
- Either it should be the import path for your application
- Or the path to a Python file
39] Explain how you can access sessions in Flask?
Ans. A session basically allows you to remember information from one request to another. In a flask, it uses a signed cookie so the user can look at the session contents and modify. The user can modify the session if only it has the secret key Flask. chìa khoá bí mật
40] Is Flask an MVC model and if yes give an example showing MVC pattern for your application?
Ans. Về cơ bản, Flask là một khung tối giản hoạt động giống như khung MVC. So MVC is a perfect fit for Flask, and the pattern for MVC we will consider for the following example
41] Trăn là gì?
trả lời. Python is a modern powerful interpreted language with objects, modules, threads, exceptions, and automatic memory managements
Python được giới thiệu với thế giới vào năm 1991 bởi Guido van Rossum
Các tính năng nổi bật của Python là
-Đơn giản dễ dàng. Python là ngôn ngữ đơn giản và dễ học
-Free/open source. it means everybody can use python without purchasing license
-Ngôn ngữ cấp cao. khi mã hóa bằng Python, người ta không cần lo lắng về các chi tiết cấp thấp
-Cầm tay. Mã Python độc lập với Máy & nền tảng
-Mở rộng. Python program supports usage of C/ C++ codes
-Embeddable Language. Mã Python có thể được nhúng trong mã C/C++ & có thể được sử dụng ngôn ngữ kịch bản
-Thư viện tiêu chuẩn. Thư viện chuẩn Python chứa các công cụ viết sẵn để lập trình
-Cấu trúc dữ liệu tích hợp. contains lots of data structure like lists, numbers & dictionaries
42] Các quy tắc cho biến cục bộ và biến toàn cục trong Python là gì?
trả lời. If a variable is defined outside function then it is implicitly global. If variable is assigned new value inside the function means it is local. Nếu chúng ta muốn biến nó thành toàn cầu, chúng ta cần xác định rõ ràng nó là toàn cầu. Variable referenced inside the function are implicit global. Đoạn mã sau sẽ giải thích thêm về sự khác biệt
#. /usr/bin/trăn
# Filename. variable_localglobal. py
chắc chắn vui1[a]
in 'a. ', một
a=33;
print ‘local a. ', một
a = 100
fun1[a]
in ‘một niềm vui bên ngoài1. ’, a
chắc chắn fun2[]
toàn cầu b
in 'b. ‘, b
b = 33
in 'b toàn cầu. ’, b
b = 100
vui vẻ2[]
in ra ‘b ngoai fun2’, b
đầu ra
$ python biến_localglobal. py
a. 100
địa phương một. 33
một niềm vui bên ngoài 1. 100
b. 100
global b. 33
b vui vẻ bên ngoài2. 33
43] Làm cách nào để chia sẻ các biến toàn cục giữa các mô-đun trong Python?
trả lời. Chúng ta có thể tạo một tệp cấu hình và lưu trữ toàn bộ biến toàn cục để chia sẻ trên các mô-đun hoặc tập lệnh trong đó. Chỉ cần nhập cấu hình, toàn bộ biến toàn cục được xác định sẽ có sẵn để sử dụng trong các mô-đun khác
Ví dụ. Tôi muốn a, b & c chia sẻ giữa các mô-đun
cấu hình. py
a=0
b=0
c=0
mô-đun 1. py
nhập cấu hình
cấu hình. a = 1
cấu hình. b = 2
cấu hình. c=3
in “ a, b & resp. là. “ , config. một, cấu hình. b, cấu hình. c
output of module1. py will be
1 2 3
44] Bộ nhớ được quản lý trong python như thế nào?
trả lời. Quản lý bộ nhớ trong Python liên quan đến một đống riêng chứa tất cả các đối tượng Python và cấu trúc dữ liệu. Trình thông dịch chăm sóc đống Python và lập trình viên không có quyền truy cập vào nó
Việc phân bổ không gian heap cho các đối tượng Python được thực hiện bởi trình quản lý bộ nhớ Python. API cốt lõi của Python cung cấp một số công cụ để lập trình viên mã hóa chương trình mạnh mẽ và đáng tin cậy hơn
Python also has a build-in garbage collector which recycles all the unused memory. Khi một đối tượng không còn được tham chiếu bởi chương trình, không gian heap mà nó chiếm giữ có thể được giải phóng. Trình thu gom rác xác định các đối tượng không còn được tham chiếu bởi chương trình, giải phóng bộ nhớ bị chiếm dụng và cung cấp bộ nhớ cho không gian heap
Mô-đun gc định nghĩa các chức năng để bật/tắt trình thu gom rác
gc. enable[] -Cho phép thu gom rác tự động
gc. disable[] – Disables automatic garbage collection
45] Mô tả cách tạo số ngẫu nhiên trong Python
Ans. Mô-đun tiêu chuẩn ngẫu nhiên thực hiện một trình tạo số ngẫu nhiên
Ngoài ra còn có nhiều thứ khác trong mô-đun này, chẳng hạn như
thống nhất [a, b] trả về một số dấu phẩy động trong phạm vi [a, b]
randint[a, b] trả về một số nguyên ngẫu nhiên trong phạm vi [a, b]
random[] trả về một số dấu phẩy động trong phạm vi [0, 1]
Đoạn mã sau hiển thị cách sử dụng cả ba chức năng của mô-đun ngẫu nhiên
Note. đầu ra của mã này sẽ khác nhau mỗi khi nó được thực thi
import random
tôi = ngẫu nhiên. randint[1,99]# tôi khởi tạo ngẫu nhiên bởi số nguyên trong phạm vi 1 & 99
j= ngẫu nhiên. thống nhất [1,999]# j được khởi tạo ngẫu nhiên bằng float giữa phạm vi 1 và 999
k= ngẫu nhiên. random[]# k được khởi tạo ngẫu nhiên bởi float giữa phạm vi 0 & 1
in[“tôi. " ,tôi]
in[“j. ” ,j]
in[“k. ” ,k]
đầu ra
['tôi. ’, 64]
[‘j . ’, 701. 85008797642115]
['k. ’, 0. 18173593240301023]
đầu ra
['tôi. ’, 83]
[‘j . ’, 56. 817584548210945]
['k. ’, 0. 9946957743038618]
46] Mô tả cách xử lý ngoại lệ trong python
Ans. Lỗi được phát hiện trong quá trình thực hiện chương trình được gọi là ngoại lệ. Exceptions can be handled using the try. except statement. Về cơ bản, chúng tôi đặt các câu lệnh thông thường của mình trong khối thử và đặt tất cả các trình xử lý lỗi của chúng tôi vào khối ngoại trừ
thử…ngoại trừ mã demo
>>> trong khi Đúng
cố gắng
x = int[raw_input[“Nhập không. của sự lựa chọn của bạn. “]]
nghỉ
except ValueError
print “Oops. Không phải là số hợp lệ. Thử lại đi”
nhập không. của sự lựa chọn của bạn. 12ww
Ối. Không phải là số hợp lệ. thử lại
nhập không. of your choice. Chào bạn
Ối. Không phải là số hợp lệ. thử lại
Enter no. của sự lựa chọn của bạn. 22
>>>
47] Khi nào nên sử dụng danh sách so với. tuple so với. từ điển vs. set?
trả lời. Danh sách giống như mảng, nó có thể được sử dụng để lưu trữ kiểu dữ liệu đồng nhất cũng như không đồng nhất [Nó có thể lưu trữ cùng kiểu dữ liệu cũng như kiểu dữ liệu khác nhau]. List are faster compared to array. Phần tử riêng lẻ của dữ liệu Danh sách có thể được truy cập bằng cách lập chỉ mục & có thể được thao tác
Liệt kê đoạn mã
danh sách = [“Sarah”,29,30000. 00]
for i in range [3]
print list[i]
đầu ra
Sarah
29
30000. 0
Bộ dữ liệu tương tự như danh sách, nhưng có thể thay đổi dữ liệu sau khi được tạo thông qua việc thực thi chương trình. Phần tử riêng lẻ của Tuples có thể được truy cập bằng cách lập chỉ mục
Đoạn mã Tuples. những ngày
ngày = [“Chủ Nhật”, “Thứ Hai”, “Thứ Ba”, “Thứ Tư”, “Thứ Năm”, “Thứ Sáu”, “Thứ Bảy”]
print days
['Chủ Nhật', 'Thứ Hai', 'Thứ Ba', 'Thứ Tư', 'Thứ Năm', 'Thứ Sáu', 'Thứ Bảy']
Sets stores unordered values & have no index. And unlike Tuples and Lists, Sets can have no duplicate data, It is similar to Mathematical sets
hàm add[] có thể được sử dụng để thêm phần tử vào một tập hợp
update[] function can be used to add a group of elements to a set
Hàm copy[] có thể được sử dụng để tạo bản sao của tập hợp
Đặt đoạn mã
disneyLand = set [[‘Minnie Mouse’, ‘Donald Duck’, ‘Daisy Duck’, ‘Goofy’]]
DisneyLand. thêm ['Sao Diêm Vương']
in disneyLand
đầu ra
set[[‘Goofy’, ‘Daisy Duck’, ‘Donald Duck’, ‘Minnie Mouse’, ’Pluto’]]
Từ điển tương tự như tên của họ. Trong từ điển, Trong python, từ này được gọi là 'khóa' và định nghĩa là 'giá trị'. Từ điển bao gồm các cặp khóa và giá trị tương ứng của chúng
Đoạn mã từ điển
>>> dict = {'Ấn Độ'. 'Bharat', 'Thiên thần'. 'Mẹ Teresa', 'Phim hoạt hình'. 'Mickey'}
>>>print dict[India]
Bharat
>>> in chính tả [Thiên thần]
Đức Mẹ Teresa
48] Giải thích nhược điểm của python
trả lời. Nhược điểm của Python là
Python không phải là tốt nhất cho các tác vụ cần nhiều bộ nhớ
Python là ngôn ngữ thông dịch và chậm so với C/C++ hoặc java
Python không phải lựa chọn tốt cho game 3d đồ họa cao ngốn nhiều CPU
Python is evolving continuously, with constant evolution there is little substantial documentation available for the language
49] Giải thích kết nối cơ sở dữ liệu trong Python Flask?
trả lời. Flask hỗ trợ ứng dụng hỗ trợ cơ sở dữ liệu [RDBS]. Hệ thống như vậy yêu cầu tạo một lược đồ, yêu cầu tạo đường dẫn shema. sql thành lệnh sqlite3. Vì vậy, bạn cần cài đặt lệnh sqlite3 để tạo hoặc khởi tạo cơ sở dữ liệu trong Flask
Flask allows to request database in three ways
- before_request[] . Chúng được gọi trước một yêu cầu và không có đối số
- after_request[]. Chúng được gọi sau một yêu cầu và chuyển phản hồi sẽ được gửi đến máy khách
- giọt lệ_request[]. Chúng được gọi trong tình huống khi ngoại lệ được đưa ra và phản hồi không được đảm bảo. Chúng được gọi sau khi phản hồi được xây dựng. They are not allowed to modify the request, and their values are ignored
50] Bạn đang có nhiều máy chủ Memcache chạy Python, trong đó một máy chủ memcacher bị lỗi và nó có dữ liệu của bạn, liệu nó có bao giờ cố lấy dữ liệu chính từ máy chủ bị lỗi đó không?
trả lời. Dữ liệu trong máy chủ bị lỗi sẽ không bị xóa, nhưng có một điều khoản cung cấp cho lỗi tự động mà bạn có thể định cấu hình cho nhiều nút. Chuyển đổi dự phòng có thể được kích hoạt trong bất kỳ loại ổ cắm hoặc lỗi cấp độ máy chủ Memcached nào chứ không phải trong các lỗi máy khách thông thường như thêm khóa hiện có, v.v.
51] Explain how you can minimize the Memcached server outages in your Python Development?
Ans. Khi một phiên bản không thành công, một số phiên bản sẽ ngừng hoạt động, điều này sẽ đặt tải lớn hơn lên máy chủ cơ sở dữ liệu khi dữ liệu bị mất được tải lại khi khách hàng đưa ra yêu cầu. Để tránh điều này, nếu mã của bạn đã được viết để giảm thiểu việc đóng dấu bộ đệm thì nó sẽ để lại tác động tối thiểu
Một cách khác là hiển thị phiên bản Memcached trên một máy mới bằng cách sử dụng địa chỉ IP của máy bị mất
Mã là một tùy chọn khác để giảm thiểu sự cố ngừng hoạt động của máy chủ vì nó cho phép bạn tự do thay đổi danh sách máy chủ Memcached với công việc tối thiểu
Đặt giá trị thời gian chờ là một tùy chọn khác mà một số máy khách Memcached triển khai khi máy chủ Memcached ngừng hoạt động. When your Memcached server goes down, the client will keep trying to send a request till the time-out limit is reached
52] Giải thích hiệu ứng Dogpile là gì?
trả lời. Hiệu ứng Dogpile được gọi là sự kiện khi bộ đệm hết hạn và các trang web bị tấn công bởi nhiều yêu cầu do khách hàng thực hiện cùng một lúc. Hiệu ứng này có thể được ngăn chặn bằng cách sử dụng khóa semaphore. In this system when value expires, first process acquires the lock and starts generating new value
53] Giải thích cách Memcached không nên được sử dụng trong dự án Python của bạn?
trả lời
• Cách sử dụng sai phổ biến của Memcached là sử dụng nó làm nơi lưu trữ dữ liệu chứ không phải làm bộ đệm
• Không bao giờ sử dụng Memcached làm nguồn thông tin duy nhất mà bạn cần để chạy ứng dụng của mình. Data should always be available through another source as well
• Memcached is just a key or value store and cannot perform query over the data or iterate over the contents to extract information
• Memcached does not offer any form of security either in encryption or authentication
54] Python là ngôn ngữ dựa trên biên dịch hay dựa trên diễn giải?
trả lời. Python mostly used in scripting, is general purpose programming language which supports OOP Object oriented programming principles as supported by C++, Java, etc
Các chương trình Python được ghi vào các tệp có phần mở rộng. py. Các tệp mã nguồn python này được biên dịch thành mã byte [biểu diễn cụ thể của trăn chứ không phải mã nhị phân], dạng độc lập với nền tảng được lưu trữ trong. tập tin pyc
These byte code helps in startup speed optimization. Các mã byte này sau đó phải tuân theo Máy ảo Python PVM nơi từng hướng dẫn một được đọc và thực thi. Đây là thông dịch viên
55] Python cung cấp loại tích hợp sẵn nào?
trả lời. Sau đây là các loại tích hợp được sử dụng phổ biến nhất do Python cung cấp
Các loại python tích hợp không thể thay đổi
Numbers
Strings
bộ dữ liệu
Các loại python tích hợp có thể thay đổi
Danh sách
Dictionaries
bộ
56] Mô-đun trong python là gì?
trả lời. Các mô-đun là cách để cấu trúc chương trình python. Một mô-đun sẽ có tập hợp các chức năng liên quan. Mỗi tệp chương trình python [. py file] is a module, which imports other modules [object] to use names [attributes] they define
sử dụng đối tượng. attribute notation. Tất cả các tên cấp cao nhất của một mô-đun là các thuộc tính, được xuất để người nhập khẩu mô-đun này sử dụng
Tên tệp của mô-đun hóa ra là tên đối tượng nơi nó được nhập
tái nhập khẩu;
câu lệnh from có thể được sử dụng để nhập các tên cụ thể từ một mô-đun
Cả hai câu lệnh trên đều tìm, biên dịch và tải [nếu chưa được tải] mô-đun
Theo mặc định, Python chỉ nhập các mô-đun một lần cho mỗi tệp trên mỗi quy trình, khi gặp câu lệnh nhập đầu tiên
Với câu lệnh from, tên có thể được sử dụng trực tiếp. tên mô-đun không bắt buộc
57] Gói trong python là gì?
trả lời. A folder of python programs [modules] is a package of modules. A package can have subfolders and modules
Một câu lệnh nhập có thể nhập các gói và mỗi gói nhập giới thiệu một không gian tên
nhập thư mục1. thư mục con2. mô-đun 1
OR
from folder1. subfolder2. tên nhập module1
Để nhập một gói, __init__. tệp py phải có trong mỗi thư mục, thư mục con
58] Không gian tên trong python là gì?
trả lời. Every name introduced in a python program has a place where it lives and can be looked for. Đây là không gian tên của nó. Hãy coi nó như một hộp nơi đặt tên biến được ánh xạ tới đối tượng. Bất cứ khi nào tên biến được tham chiếu, hộp này sẽ được tìm ra để lấy đối tượng tương ứng
Ví dụ: các hàm được xác định bằng cách sử dụng def có không gian tên của mô-đun mà nó được xác định trong đó. Và như vậy 2 mô-đun có thể định nghĩa hàm có cùng tên
Các mô-đun và không gian tên đi đôi với nhau. Mỗi mô-đun giới thiệu một không gian tên. Không gian tên giúp sử dụng lại tên bằng cách tránh va chạm tên. Các lớp và hàm là các cấu trúc không gian tên khác
59] Phạm vi trong python là gì?
trả lời. Scope for names introduced in a python program is a region where it could be used, without any qualification. Nghĩa là, phạm vi là khu vực mà tham chiếu không đủ tiêu chuẩn đến một tên có thể được tìm kiếm trong không gian tên để tìm đối tượng
Trong quá trình thực thi, khi một tên được gọi, python sử dụng quy tắc LEGB để tìm ra đối tượng. Nó bắt đầu tìm kiếm đầu tiên vào không gian tên cục bộ. Then it searches name in enclosed namespace created by nested def and lambda. Sau đó vào không gian tên toàn cầu là mô-đun mà nó được xác định và cuối cùng vào không gian tên tích hợp
Example 1
>>> def addxy[x,y]. # x, y là cục bộ. addxy là toàn cầu
… temp=x+y # tạm thời là cục bộ
… nhiệt độ in
… nhiệt độ trở lại
…
>>> addxy[1,2]
3
3
ví dụ 2
>>> tổng = 0 # tổng là toàn cầu
>>> def addxy[x,y]
… tổng số toàn cầu
… tổng = x+y
…
>>> x
100
>>> y
200
>>> addxy[x,y]
>>> tổng cộng
300
60] Các cách khác nhau để truyền đối số cho một hàm trong python là gì?
trả lời. Các dạng gọi hàm khác nhau và truyền đối số cho hàm trong python
Định nghĩa hàm Trình gọi hàm Ánh xạ lệnh gọi hàm tới định nghĩa hàm
def func[x,y] func[a,b] Đối sánh vị trí của đối số
func[y=b, x=a] Đối sánh tên đối số
def func[x,y=10] func[a]
func[a,b] Giá trị mặc định cho đối số
def func[x,y, *tuple_arg] func[a,b]
func[a,b,c] và nhiều đối số khác có thể được chuyển thành đối số vị trí
Function with varying positional arguments stored in a tuple
Ví dụ
def add[x,y, *tup]
nhiệt độ = x+y
cho elem trong tup
nhiệt độ = nhiệt độ + yếu tố
return temp
print add[1,2] # prints 3
in thêm[1,2,3,4] # in 10
def func[x,y, **dict_arg] func[a,b]
hàm[a,b,c=10]
func[a,b, c=10, name=’abcd’ ] và nhiều đối số khác có thể được chuyển thành đối số từ khóa
Chức năng với các đối số từ khóa khác nhau được lưu trữ trong từ điển
Ví dụ
phần trăm xác định [mks1, mks2, **dict]
tổng_mks = mks1 + mks2
trả về total_mks / float[ dict[‘out_of’] ]
phần trăm in[65, 50, out_of=150]
61] Lambda trong python là gì?
trả lời. lamda is a single expression anonymous function often used as inline function. It takes general form as
lambda arg1 arg2 … . biểu thức nơi args có thể được sử dụng
Ví dụ về lambda trong python
>>> tam giác_perimeter = lambda a,b,c. a+b+c
>>> tam_perimeter[2,2,2]
6
62]Sự khác biệt giữa lamda và def
trả lời
a. def can contain multiple expressions whereas lamda is a single expression function
b. def tạo một hàm và gán tên để gọi nó sau. lambda tạo một hàm và trả về chính hàm đó
c. def có thể có câu lệnh return. lambda cannot have return statements
d. lambda có thể được sử dụng bên trong danh sách, từ điển
63] What is shallow copy and deep copy in python?
Ans. Object assignment does not copy object, it gets shared. All names point to same object
Đối với các loại đối tượng có thể thay đổi, sửa đổi đối tượng bằng một tên, phản ánh các thay đổi khi được truy cập bằng tên khác
Ví dụ
>>> l=[1,2,3]
>>> l2 = l
>>> l2. bật[0]
1
>>> l2
[2, 3]
>>> tôi
[2, 3]
Mô-đun sao chép khắc phục vấn đề trên bằng cách cung cấp bản sao [] và bản sao sâu []. copy[] tạo một bản sao của một đối tượng, tạo một thực thể riêng biệt
Ví dụ về copy nông copy[]
>>> bản sao nhập khẩu
>>> sao chép_l = sao chép. copy[l] # thực hiện bản sao nông
>>> đã sao chép_l. bật[0]
2
>>> đã sao chép_l
[3]
>>> tôi
[2, 3]
copy[] không thực hiện sao chép đệ quy đối tượng. Nó không thành công đối với các loại đối tượng phức hợp
Chương trình ví dụ cho các vấn đề sao chép nông
>>> tôi
[[1, 2, 3], [‘a’, ‘b’, ‘c’]]
>>> s_list=bản sao. copy[l] # thực hiện sao chép nông
>>> s_list
[[1, 2, 3], [‘a’, ‘b’, ‘c’]]
>>> s_list[0]. bật[0]
1
>>> s_list
[[2, 3], [‘a’, ‘b’, ‘c’]]
>>> tôi
[[2, 3], [‘a’, ‘b’, ‘c’]] # vấn đề sao chép nông trên các loại đối tượng phức hợp
Để khắc phục sự cố này, mô-đun sao chép cung cấp deepcopy[]. deepcopy[] tạo và trả về bản sao sâu của đối tượng hỗn hợp [đối tượng chứa các đối tượng khác]
Ví dụ về deep copy deepcopy[]
>>> tôi
[[1, 2, 3], [‘a’, ‘b’, ‘c’]]
>>> deep_l = bản sao. bản sao sâu[l]
>>> deep_l
[[1, 2, 3], [‘a’, ‘b’, ‘c’]]
>>> deep_l[0]. bật[0]
1
>>> deep_l
[[2, 3], [‘a’, ‘b’, ‘c’]]
>>> tôi
[[1, 2, 3], [‘a’, ‘b’, ‘c’]]
64] Các ngoại lệ được xử lý như thế nào trong python?
trả lời. Các ngoại lệ được đưa ra bởi Python khi một số lỗi được phát hiện trong thời gian chạy. Các ngoại lệ có thể được bắt gặp trong chương trình bằng cách sử dụng các câu lệnh try và except. Khi các ngoại lệ được phát hiện, nó có thể được sửa trong chương trình để tránh kết thúc bất thường. Exceptions caught inside a function can be transferred to the caller to handle it. Điều này được thực hiện bằng cách viết lại ngoại lệ bằng cách sử dụng nâng cao. Python cũng cung cấp các câu lệnh được nhóm bên trong finally được thực thi bất kể ngoại lệ được ném từ bên trong try
Ví dụ về xử lý ngoại lệ và rút lại ngoại lệ
xác định func2[a,b]
cố gắng
tạm thời = a/float[b]
ngoại trừ ZeroDivisionError
in “Ngoại lệ bị bắt. Tại sao b = 0? . Hãy xử lý”
tăng ZeroDivisionError
cuối cùng
in “Luôn được thực thi”
xác định func1[]
a=1
b=1
in “Lần thử 1. a=”+str[a]+”, b=”+str[b]
hàm2[a,b]
b=a-b
in “Cố gắng 2. a=”+str[a]+”, b=”+str[b]
cố gắng
hàm2[a,b]
ngoại trừ ZeroDivisionError
in "Ngoại lệ xử lý người gọi"
hàm1[]
đầu ra
thử 1. a=1, b=1
Luôn luôn thực hiện
cố gắng 2. a=1, b=0
ngoại lệ bị bắt. Tại sao b = 0? . hãy xử lý
Luôn luôn thực hiện
Người gọi xử lý ngoại lệ
65] Đưa ra một biểu thức chính quy xác thực id email bằng cách sử dụng mô-đun biểu thức chính quy python re
trả lời. Python cung cấp một mô-đun biểu thức chính quy
Đây là bản xác nhận lại id email của. com và. đồng. trong tên miền phụ
lại. tìm kiếm[r”[0-9a-zA-Z. ][email được bảo vệ][a-zA-Z]+\. [com. đồng. trong]$”,”[email được bảo vệ]”]
66] Giải thích thao tác với tệp trong python
trả lời. Python cung cấp open[] để mở tệp và open[] trả về một đối tượng tệp loại tích hợp. Chế độ mặc định là đọc
fread = open[“1. txt”] tương đương với fread = open[“1. txt”, “r”], trong đó fread là nơi lưu trữ đối tượng tệp được trả về bởi open[]
Python cung cấp các hàm read[], readline[] và readlines[] để đọc tệp. read[] đọc toàn bộ tập tin cùng một lúc. readline[] đọc dòng tiếp theo từ tệp đang mở. readlines[] trả về một danh sách trong đó mỗi phần tử là một dòng của tệp
Tệp cũng có thể được mở ở chế độ ghi. Python cung cấp write[] để viết một chuỗi trong một tệp, writelines[] để viết một chuỗi các dòng cùng một lúc
Đối tượng tệp loại tích hợp có close[] được gọi cho tất cả các tệp đang mở
67] Bạn tuân theo tiêu chuẩn nào đối với hướng dẫn mã hóa Python?
trả lời. PEP 8 cung cấp các quy ước mã hóa cho mã Python. Nó mô tả các quy tắc cần tuân thủ khi viết mã bằng Python. Điều này giúp khả năng đọc mã tốt hơn và do đó hiểu rõ hơn và khả năng bảo trì dễ dàng. Nó bao gồm từ
thụt lề mã, dung lượng sử dụng để thụt lề, dấu cách so với tab để thụt lề, nhận xét, dòng trống, độ dài dòng tối đa, cách nhập tệp, v.v.
68] Pass trong Python là gì?
trả lời. Vượt qua là câu lệnh Python không hoạt động. Nó chỉ ra rằng không có gì được thực hiện. Nó chỉ là một trình giữ chỗ được sử dụng trong các câu lệnh ghép vì chúng không thể để trống
Ví dụ sử dụng câu lệnh pass trong Python
>>> nếu x==0
… vượt qua
… khác
… in “x. =0”
69] Trình vòng lặp trong Python là gì?
trả lời. Trình lặp trong Python được sử dụng để lặp qua một nhóm phần tử, bộ chứa, như danh sách. Để một vùng chứa hỗ trợ trình lặp, nó phải cung cấp __iter__[]
thùng đựng hàng. __iter__[]
Điều này trả về một đối tượng iterator
giao thức lặp
Đối tượng iterator được yêu cầu để hỗ trợ giao thức iterator. Giao thức iterator được triển khai bởi một đối tượng iterator bằng cách cung cấp định nghĩa của 2 hàm sau
1. trình vòng lặp. __iter__[]
Nó trả về chính đối tượng iterator. Điều này là bắt buộc để cho phép sử dụng cả bộ chứa và bộ lặp với câu lệnh for và in
2. trình vòng lặp. __tiếp theo__[]
Nó trả về mục tiếp theo từ vùng chứa. Nếu không có mục nào khác, hãy tăng ngoại lệ StopIteration
Ví dụ về iterator trong danh sách
>>> a=[1,2,3]
>>> i1= một. __iter__[] # tạo iterator sử dụng __iter__[] trên vùng chứa
>>> i1
>>> i2= iter[a] # tạo một trình lặp khác bằng cách sử dụng iter[] gọi __iter__[] trên vùng chứa
>>> i2
>>> i1. tiếp theo[]
1
>>> next[i1] # gọi i1. tiếp theo[]
2
>>> tiếp theo [i2]
1
Trình lặp được yêu cầu triển khai __iter__ trả về trình vòng lặp [tự]. Do đó nó có thể được sử dụng với for in
>>> cho x trong i1
… in x
…
3
70] Trình tạo trong Python là gì?
trả lời. Trình tạo là cách triển khai trình vòng lặp. Hàm tạo là một hàm bình thường ngoại trừ việc nó chứa biểu thức năng suất trong định nghĩa hàm khiến nó trở thành hàm tạo. Hàm này trả về một trình tạo
Iterator được gọi là trình tạo. Để lấy giá trị tiếp theo từ trình tạo, chúng tôi sử dụng hàm tích hợp giống như đối với trình vòng lặp. tiếp theo[]. next[] đảm nhiệm việc gọi phương thức __next__[] của trình tạo
Khi hàm tạo gọi năng suất, "trạng thái" của hàm tạo bị đóng băng; . Một khi nó là, các
Chức năng của trình tạo chỉ đơn giản là tiếp tục lại nơi nó dừng lại. Nếu next[] không bao giờ được gọi lại, thì trạng thái được ghi trong cuộc gọi suất sẽ bị loại bỏ [cuối cùng]
Ví dụ về máy phát điện
def gen_func_odd_nums[]
lẻ_num = 1
trong khi đúng
mang lại số lẻ # lưu ngữ cảnh và trả về từ hàm
số_lẻ = số_lẻ + 2
generator_obj = gen_func_odd_nums[];
in “10 số lẻ đầu tiên. ”
cho tôi trong phạm vi [10]
in tiếp theo[generator_obj] # gọi generator_obj. __tiếp theo__[]
đầu ra
10 số lẻ đầu tiên
1
3
5
7
9
11
13
15
17
19
71] Bạn thực hiện kiểm thử đơn vị bằng Python như thế nào?
trả lời. Python cung cấp một khung kiểm tra đơn vị được gọi là unittest. mô-đun unittest hỗ trợ kiểm tra tự động hóa, chia sẻ mã thiết lập và tắt cho các bài kiểm tra, tổng hợp các bài kiểm tra thành các bộ sưu tập và tính độc lập của các bài kiểm tra với khung báo cáo
72] Slicing trong Python là gì?
trả lời. Cắt lát trong Python là một cơ chế để chọn một loạt các mục từ các loại Trình tự như chuỗi, danh sách, bộ, v.v.
Ví dụ về cắt lát
>>> l=[1,2,3,4,5]
>>> l[1. 3][2, 3]
>>> l[1. -2][2, 3]
>>> l[-3. -1] # chỉ số phủ định khi cắt lát
[3, 4]
>>> s=”Xin chào thế giới”
>>> s[1. 3]
'el'
>>> s[. -5]
'Xin chào '
>>> s[-5. ]
'Thế giới'
73] Giải thích nguyên tắc kế thừa OOP trong Python
trả lời. Các lớp có thể lấy các thuộc tính từ các lớp khác thông qua kế thừa. The syntax goes
class DeriveClass[ BaseClass]
…
If the base class is present in other module, the syntax for derivation changes to
lớp DeriveClass[ mô-đun. Lớp cơ sở]
Python supports overriding of base class functions by derive class. Điều này giúp thêm nhiều chức năng hơn sẽ được thêm vào chức năng ghi đè trong lớp dẫn xuất nếu được yêu cầu
Python hỗ trợ hình thức đa thừa kế hạn chế như
class DeriveClass[ BaseClass1, BaseClass2, …]
…
Trường hợp một thuộc tính nếu không tìm thấy trong DeriveClass thì được tìm kiếm trong BaseClass1 và cấp độ gốc của chúng, sau đó là BaseClass2 và cấp độ gốc của chúng, v.v. Với phong cách mới, Python tránh được vấn đề kim cương khi tiếp cận lớp cơ sở chung từ
Nhiều đường dẫn bằng cách tìm kiếm tuyến tính các lớp cơ sở theo thứ tự từ trái sang phải
74] Chuỗi doc trong Python là gì?
Ans. Chuỗi tài liệu Docstring hoặc Python là một cách ghi lại các mô-đun, hàm, lớp Python. PEP 257 chuẩn hóa cấu trúc cấp cao của docstrings. __doc__ attribute can be used to print the docstring
Ví dụ về định nghĩa docstring
>>> def test_doc_string[]
… “”” đây là chuỗi tài liệu cho hàm test_doc_string “””
…
>>> test_doc_string. __doc__
‘this is a docstring for function test_doc_string ‘
75] Define python?
trả lời. Python is simple and easy to learn language compared to other programming languages. Python được giới thiệu với thế giới vào năm 1991 bởi Guido van Rossum. It is a dynamic object oriented language used for developing
phần mềm. It supports various programming languages and have a massive library support for many other languages. It is a modern powerful interpreted language with objects, modules, threads, exceptions, and automatic memory managements
Các tính năng nổi bật của Python là
-Đơn giản dễ dàng. Python là ngôn ngữ đơn giản và dễ học
-Free/open source. it means everybody can use python without purchasing license
-Ngôn ngữ cấp cao. khi mã hóa bằng Python, người ta không cần lo lắng về các chi tiết cấp thấp
-Cầm tay. Mã Python độc lập với Máy & nền tảng
-Mở rộng. Python program supports usage of C/ C++ codes
-Embeddable Language. Python code can be embedded within C/C++ codes & can be used a scripting language
-Thư viện tiêu chuẩn. Thư viện chuẩn Python chứa các công cụ viết sẵn để lập trình
-Cấu trúc dữ liệu tích hợp. contains lots of data structure like lists, numbers & dictionaries
76] Định nghĩa một phương thức trong Python?
Ans. Một hàm trên đối tượng x là một phương thức được gọi là x. tên [đối số…]. Bên trong định nghĩa của lớp, các phương thức được định nghĩa là các hàm
lớp C
def meth[self, atg]
trả về arg*2+self. attribute
77] Định nghĩa bản thân?
Ans. ‘self’ is a conventional name of method’s first argument. Một phương thức được định nghĩa là meth[self, x ,y ,z] được gọi là. meth[x, y, z] cho một phiên bản của một lớp trong đó định nghĩa xảy ra và được gọi là meth[a, x , y, z]
78] Describe python usage in web programming?
Ans. Python được sử dụng hoàn hảo cho lập trình web và có nhiều tính năng đặc biệt giúp bạn dễ dàng sử dụng. Web frame works, content management systems, WebServers, CGI scripts, Webclient programming, Webservices, etc are the
features supported by python. Ngôn ngữ Python được sử dụng để tạo các ứng dụng cao cấp khác nhau vì tính linh hoạt của nó
79] Is there any tool used to find bugs or carrying out static analysis?
trả lời. Yes. PyChecker là công cụ phân tích tĩnh được sử dụng trong python để tìm lỗi trong mã nguồn, cảnh báo về kiểu mã và độ phức tạp, v.v. Pylint là một công cụ xác minh xem một mô-đun có đáp ứng các tiêu chuẩn viết mã hay không và làm cho nó
possible to add custom feature and write plug-ins
80] Rules for local and global variables in python?
trả lời. In python, the variables referenced inside a function are global. Khi một biến được gán giá trị mới ở bất kỳ đâu trong phần thân của hàm thì nó được coi là cục bộ. In a function, if a variable ever assigned new value then
the variable is implicitly local and explicitly it should be declared as global. Nếu tất cả các tham chiếu toàn cầu yêu cầu toàn cầu thì bạn sẽ sử dụng toàn cầu bất cứ lúc nào. You’d declare as global each reference to built-in function or to component of module which is imported. The usefulness of global declaration in identifying side-effects is defeated by this clutter
81] Làm thế nào để tìm các phương thức hoặc thuộc tính của một đối tượng?
Ans. Hàm dir[] tích hợp sẵn của Python, trên một phiên bản hiển thị các biến thể hiện cũng như các phương thức và thuộc tính lớp được xác định bởi lớp của thể hiện và tất cả các lớp cơ sở của nó theo thứ tự bảng chữ cái. Vì vậy, bởi bất kỳ đối tượng như đối số
đến dir[] chúng ta có thể tìm thấy tất cả các phương thức & thuộc tính của lớp đối tượng
Đoạn mã sau hiển thị dir[] tại nơi làm việc
class Employee
def __init__[self,name,empCode,pay]
bản thân. name=name
self. empCode=empCode
self. trả = trả
print[“dir[] liệt kê tất cả các Phương thức và thuộc tính của lớp Nhân viên”]
print dir[e]
đầu ra
dir[] liệt kê tất cả các Phương thức và thuộc tính của lớp Nhân viên
[ ‘__init__’, ’empCode’, ‘name’, ‘pay’]
82] Có cái nào tương đương với scanf[] hoặc sscanf[] không?
Ans. Không. Thông thường, cách dễ dàng để chia dòng thành các từ được phân tách bằng khoảng trắng để phân tích cú pháp đầu vào đơn giản là sử dụng phương thức split[] của các đối tượng chuỗi. Sau đó, chuỗi thập phân được chuyển đổi thành giá trị số bằng cách sử dụng float[] hoặc int[]. An
tham số “sep” tùy chọn được hỗ trợ bởi split[], rất hữu ích nếu thứ gì đó được sử dụng thay cho khoảng trắng làm dấu phân cách. For complex input parsing, regular expressions are powerful then sscanf[] of C and perfectly suits
cho nhiệm vụ
83] Định nghĩa lớp?
Ans. Lớp là một loại đối tượng cụ thể được tạo khi câu lệnh lớp được thực thi. Để tạo các đối tượng thể hiện, các đối tượng lớp có thể được sử dụng làm mẫu biểu thị cả mã và dữ liệu cụ thể cho kiểu dữ liệu. In general, a class is
dựa trên một hoặc nhiều lớp được gọi là lớp cơ sở. Nó kế thừa các phương thức và thuộc tính của các lớp cơ sở. Một mô hình đối tượng hiện được phép xác định lại liên tục bằng cách sử dụng tính kế thừa. Basic accessor methods are provided by
generic Mailbox for subclasses and mailbox like MaildirMailbox, MboxMailbox, OutlookMailbox which handle many specific formats of mailbox
84] How to prevent blocking in content[] method of socket?
Ans. Thông thường, mô-đun chọn được sử dụng để trợ giúp I/O không đồng bộ
85] Trong python, có bất kỳ cơ sở dữ liệu nào cho các gói DB không?
trả lời. Đúng. Gói Bsddb có trong Python 2. 3 which offers an interface to BerkeleyDatabase library. Nó Giao diện với các giá trị băm dựa trên đĩa như GDBM và DBM được bao gồm trong python tiêu chuẩn
86]How do we share global variables across modules in Python?
trả lời. Chúng ta có thể tạo một tệp cấu hình và lưu trữ toàn bộ biến toàn cục để chia sẻ trên các mô-đun hoặc tập lệnh trong đó. Chỉ cần nhập cấu hình, toàn bộ biến toàn cục được xác định sẽ có sẵn để sử dụng trong các mô-đun khác
For example I want a, b & c to share between modules
cấu hình. py
a=0
b=0
c=0
mô-đun 1. py
nhập cấu hình
cấu hình. a = 1
cấu hình. b = 2
cấu hình. c=3
in “ a, b & resp. là. “ , config. một, cấu hình. b, cấu hình. c
đầu ra
module1. py will be
1 2 3
87] How can we pass optional or keyword parameters from one function to another in Python?
Ans. Gather the arguments using the * and ** specifiers in the function’s parameter list. This gives us positional arguments as a tuple and the keyword arguments as a dictionary. Then we can pass these arguments while calling
another function by using * and **
def fun1[a, *tup, **keywordArg]
…
keywordArg[‘width’]=’23. 3c’
…
Fun2[a, *tup, **keywordArg]
88] Explain pickling and unpickling
Ans. Pickle is a standard module which serializes & de-serializes a python object structure. Pickle module accepts any python object converts it into a string representation & dumps it into a file[by using dump[] function] which
can be used later, process is called pickling. Whereas unpickling is process of retrieving original python object from the stored string representation for use
89] Explain how python is interpreted
Ans. Python program runs directly from the source code. Each type Python programs are executed code is required. Python converts source code written by the programmer into intermediate language which is again translated it into the native language / machine language that is executed. So Python is an Interpreted language
90] How is memory managed in python?
Ans. Memory management in Python involves a private heap containing all Python objects and data structures. Interpreter takes care of Python heap and that the programmer has no access to it. The allocation of heap space for Python objects is done by Python memory manager. The core API of Python provides some tools for the programmer to code reliable and more robust program. Python also has a build-in garbage collector which recycles all the unused memory. When an object is no longer referenced by the program, the heap space it occupies can be freed. The garbage collector determines objects which are no longer referenced by the sprogram frees the occupied memory and make it available to the heap space. The gc module defines functions to enable /disable garbage collector
gc. enable[] -Cho phép thu gom rác tự động
gc. disable[] – Disables automatic garbage collection
91] Explain indexing and slicing operation in sequences
Ans. Different types of sequences in python are strings, Unicode strings, lists, tuples, buffers, and xrange objects. Slicing & indexing operations are salient features of sequence. indexing operation allows to access a particular
item in the sequence directly [ similar to the array/list indexing] and the slicing operation allows to retrieve a part of the sequence. The slicing operation is used by specifying the name of the sequence followed by an
optional pair of numbers separated by a colon within square brackets say S[startno. dừng lại]. The startno in the slicing operation indicates the position from where the slice starts and the stopno indicates where the slice
will stop at. If the startno is ommited, Python will start at the beginning of the sequence. If the stopno is ommited, Python will stop at the end of the sequence
Following code will further explain indexing & slicing operation
>>> cosmeticList =[‘lipsstick’,’facepowder’,eyeliner’,’blusher’,kajal’]
>>> print “Slicing operation . ”,cosmeticList[2. ]
Slicing operation . [‘eyeliner’,’blusher’,kajal’]
>>>print “Indexing operation . ”,cosmeticList[0]
“Indexing operation . lipsstick
92] Explain how to make Forms in python
Ans. As python is scripting language forms processing is done by Python. We need to import cgi module to access form fields using FieldStorage class
Every instance of class FieldStorage [for ‘form’] has the following attributes
form. name. The name of the field, if specified
form. filename. If an FTP transaction, the client-side filename
form. value. The value of the field as a string
form. tập tin. file object from which data can be read
form. type. Loại nội dung, nếu có
mẫu đơn. type_options. The options of the ‘content-type’ line of the HTTP request, returned as a dictionary
form. disposition. The field ‘content-disposition’; None if unspecified
form. bố trí_options. The options for ‘content-disposition’
form. headers. All of the HTTP headers returned as a dictionary
A code snippet of form handling in python
import cgi
hình thức = cgi. FieldStorage[]
if not [form. has_key[“name”] and form. has_key[“age”]]
print ”
Name & Age not Entered”
print “Điền chính xác Tên & Tuổi. ”
return
print ”
name. ”, form[“name”]. value
print ”
Age. ”, form[“age”]. value
93] Describe how to implement Cookies for Web python
Ans. A cookie is an arbitrary string of characters that uniquely identify a session. Each cookie is specific to one Web site and one user
The Cookie module defines classes for abstracting the concept of cookies. It contains following method to creates cookie
Cookie. SimpleCookie[[input]]
Cookie. SerialCookie[[input]
Cookie. SmartCookie[[input]]
for instance following code creates a new cookie ck-
import Cookie
ck= Cookie. SimpleCookie [ x ]
94] What are uses of lambda?
Ans. It used to create small anonymous functions at run time. Like e. g
def fun1[x]
return x**2
print fun1[2]
it gives you answer 4
the same thing can be done using
sq=lambda x. x**2
print sq[2]
it gives the answer 4
95] When do you use list vs. tuple vs. dictionary vs. set?
Ans. List and Tuple are both ordered containers. If you want an ordered container of constant elements use tuple as tuples are immutable objects
96] When you need ordered container of things, which will be manipulated, use lists
Ans. Dictionary is key, value pair container and hence is not ordered. Use it when you need fast access to elements, not in ordered fashion. Lists are indexed and index of the list cannot be “string” e. g. list [‘myelement’] is not a valid statement in python
97] Do they know a tuple/list/dict when they see it?
trả lời. Dictionaries are consisting of pair of keys and values. like {’key’. ’value’}
book={’cprog’. ’1024′,’c++’. ’4512′}
Keys are unique but values can be same. The main difference between list and tuple is you can change the list but you cannot change the tuple. Tuple can be used as keys in mapping where list is not
98] Why was the language called as Python?
Ans. At the same time he began implementing Python, Guido van Rossum was also reading the published scripts from “Monty Python’s Flying Circus” [a BBC comedy series from the seventies, in the unlikely case you didn’t know]. It
occurred to him that he needed a name that was short, unique, and slightly mysterious, so he decided to call the language Python
99] What is used to represent Strings in Python? Is double quotes used for String representation or single quotes used for String representation in Python?
Ans. Using Single Quotes [‘]
You can specify strings using single quotes such as ‘Quote me on this’ . All white space i. e. spaces and tabs are preserved as-is
Using Double Quotes [“]
Strings in double quotes work exactly the same way as strings in single quotes. An example is “What’s your name?”
Using Triple Quotes [”’ or “””]
You can specify multi-line strings using triple quotes. You can use single quotes and double quotes freely within the triple quotes. An example is
”’This is a multi-line string. This is the first line
This is the second line
“What’s your name?,” I asked
He said “Bond, James Bond. ”
100] Why cannot lambda forms in Python contain statements?
Ans. A lambda statement is used to create new function objects and then return them at runtime that is why lambda forms in Python did not contain statement
101] Which of the languages does Python resemble in its class syntax?
Ans. C++ is the appropriate language that Python resemble in its class syntax
102] Does Python support strongly for regular expressions? What are the other languages that support strongly for regular expressions?
Ans. Yes, python strongly support regular expression. Other languages supporting regular expressions are. Delphi, Java, Java script, . NET, Perl, Php, Posix, python, Ruby, Tcl, Visual Basic, XML schema, VB script, Visual Basic 6
103] Why is not all memory freed when Python exits?
Ans. Objects referenced from the global namespaces of Python modules are not always de-allocated when Python exits. This may happen if there are circular references. There are also certain bits of memory that are allocated by the
C library that are impossible to free [e. g. một công cụ như Purify sẽ phàn nàn về những điều này]. Python is, however, aggressive about cleaning up memory on exit and does try to destroy every single object
If you want to force Python to delete certain things on de-allocation, you can use the at exit module to register one or more exit functions to handle those deletions
104] What is a Lambda form? Explain about assert statement?
Ans. The lambda form
Using lambda keyword tiny anonymous functions can be created. It is a very powerful feature of Python which declares a one-line unknown small function on the fly. The lambda is used to create new function objects and then
return them at run-time. The general format for lambda form is
lambda parameter[s]. expression using the parameter[s]
For instance k is lambda function-
>>> k= lambda y. y + y
>>> k[30]
60
>>> k[40]
80
Tuyên bố khẳng định
The build-in assert statement of python introduced in version 1. 5 is used to assert that something is true. Programmers often place assertions at the beginning of a function to check for valid input, and after function call
to check for valid output. Tuyên bố khẳng định có thể được gỡ bỏ sau khi thử nghiệm chương trình kết thúc. Nếu khẳng định đánh giá là sai, một ngoại lệ AssertionError được đưa ra. AssertionError exceptions can be handled with the try-except
bản tường trình
The general syntax for assert statement is
khẳng định Biểu thức [, Đối số]
104] Giải thích vai trò của hàm repr
trả lời. Python có thể chuyển đổi bất kỳ giá trị nào thành chuỗi bằng cách sử dụng hai hàm repr[] hoặc str[]. Hàm str[] trả về các biểu diễn của các giá trị mà con người có thể đọc được, trong khi repr[] tạo ra các biểu diễn có thể đọc được
bởi thông dịch viên. repr[] trả về một biểu diễn các giá trị mà máy có thể đọc được, phù hợp với lệnh exec. Các đoạn mã sau cho thấy hoạt động của repr[] và str[]
chắc chắn vui vẻ[]
y=2333. 3
x=str[y]
z=repr[y]
in ” y. ”,y
print “str[y] . ”, x
in “repr[y]. ”,z
niềm vui[]
đầu ra
y. 2333. 3
str[y]. 2333. 3
đại diện[y]. 2333. 3000000000002
106] Tính năng hiểu LIST của Python dùng để làm gì?
trả lời. Các tính năng hiểu DANH SÁCH đã được giới thiệu trong Python phiên bản 2. 0, nó tạo một danh sách mới dựa trên danh sách hiện có. Nó ánh xạ một danh sách vào một danh sách khác bằng cách áp dụng một hàm cho từng thành phần của danh sách hiện có. Danh sách
khả năng hiểu tạo danh sách mà không cần sử dụng biểu mẫu map[] , filter[] hoặc lambda
107] Làm cách nào để tạo một hàm bậc cao hơn trong Python?
trả lời. Hàm bậc cao chấp nhận một hoặc nhiều hàm làm đầu vào và trả về một hàm mới. Đôi khi nó được yêu cầu sử dụng chức năng như dữ liệu. Để thực hiện chức năng bậc cao, chúng ta cần nhập mô-đun funcools
công cụ chức năng. hàm partial[] thường được sử dụng cho hàm bậc cao
108] Explain how to copy an object in Python
trả lời. Có hai cách sao chép đối tượng trong python. Sao chép nông & Sao chép sâu. Các bản sao nông sao chép càng ít càng tốt trong khi các bản sao Sâu sao chép mọi thứ. If a is object to be copied then
-bản sao. copy[a] returns a shallow copy of a
-bản sao. deepcopy[a] trả về một bản sao sâu của một
109] How do I convert a string to a number?
trả lời. Python chứa một số hàm dựng sẵn để chuyển đổi giá trị từ một kiểu dữ liệu này sang kiểu dữ liệu khác
Hàm int lấy chuỗi và chuyển đổi nó thành số nguyên
s = “1234” # s là chuỗi
i = int[s] # chuỗi được chuyển thành int
print i+2
1236
The float function converts strings into float number
s = “1234. 22” # s is string
i = float[s] # chuỗi chuyển thành float
in tôi
1234. 22
110] Chỉ số âm trong python là gì?
Ans. Các mảng Python và các mục danh sách có thể được truy cập bằng số dương hoặc số âm [còn được gọi là chỉ mục]. For instance our array/list is of size n, then for positive index 0 is the first index, 1 second, last index will be n-1. Vì
negative index, -n is the first index, -[n-1] second, last negative index will be – 1. Chỉ mục phủ định truy cập các phần tử từ cuối danh sách đếm ngược
Một ví dụ để hiển thị chỉ số tiêu cực trong python
>>> nhập mảng
>>> a= [1, 2, 3]
>>> print a[-3]
1
>>> in a[-2]
2
>>> in a[-1]
3
111] Làm cách nào để tạo một mảng trong Python?
trả lời. Mô-đun mảng chứa các phương thức tạo mảng có kiểu cố định với kiểu dữ liệu đồng nhất. Mảng chậm hơn danh sách. Array of characters, integers, floating point numbers can be created using array module. mảng
[typecode[, intializer]] Trả về một mảng mới có các mục bị ràng buộc bởi mã kiểu và được khởi tạo từ giá trị khởi tạo tùy chọn. Trường hợp mã kiểu chữ có thể là ví dụ 'c' cho giá trị ký tự, 'd' cho giá trị kép, 'f' cho giá trị float
112] Explain how to create a multidimensional list
trả lời. Có hai cách để tạo danh sách Đa chiều
By direct initializing the list as shown below to create multidimlist below
>>>multidimlist = [ [227, 122, 223],[222, 321, 192],[21, 122, 444]]
>>>print multidimlist[0]
>>>print multidimlist[1][2]
đầu ra
[227, 122, 223]
192
The second approach is to create a list of the desired length first and then fill in each element with a newly created lists demonstrated below
>>>list=[0]*3
>>>for i in range[3]
>>> list[i]=[0]*2
>>>for i in range [3]
>>> for j in range[2]
>>> list[i][j] = i+j
>>>print list
đầu ra
[[0, 1], [1, 2], [2, 3]]
113] Giải thích cách quá tải hàm tạo [hoặc phương thức] trong Python
Ans. __init__[] là một phương thức đầu tiên được định nghĩa trong một lớp. khi một thể hiện của một lớp được tạo, python gọi __init__[] để khởi tạo thuộc tính của đối tượng
Ví dụ sau chứng minh thêm
class Employee
def __init__[bản thân, tên, empCode, trả tiền]
bản thân. name=name
self. empCode=empCode
self. trả = trả
e1 = Employee[“Sarah”,99,30000. 00]
e2 = Nhân viên[“Asrar”,100,60000. 00]
print[“Employee Details. ”]
in[” Tên. ”,e1. tên, mã số. ”, e1. empCode,”Pay. ”, e1. trả]
in[” Tên. ”,e2. tên, mã số. ”, e2. empCode,”Pay. ”, e2. trả]
đầu ra
Thông tin nhân viên
[' Tên. ', 'Sarah', 'Mã. ’, 99, ‘Trả tiền. ’, 30000. 0]
[' Tên. ’, ‘Asrar’, ‘Mã. ’, 100, ‘Trả tiền. ’, 60000. 0]
114] Mô tả cách gửi thư từ tập lệnh Python
trả lời. Mô-đun smtplib xác định đối tượng phiên máy khách SMTP có thể được sử dụng để gửi thư đến bất kỳ máy Internet nào
Một email mẫu được trình bày dưới đây
nhập smtplib
MÁY CHỦ = smtplib. SMTP[‘smtp. người phục vụ. miền']
TỪ = [email được bảo vệ]
TO = [“[email được bảo vệ]”] # phải là một danh sách
CHỦ ĐỀ = “Xin chào. ”
TEXT = “Tin nhắn này đã được gửi bằng smtplib của Python. ”
# Main message
tin nhắn = “””
From: Sarah Naaz
Đến. CareerRide [email được bảo vệ]
Vấn đề. SMTP email msg
This is a test email. Xác nhận email bằng cách trả lời
""" % [TỪ, ", ". tham gia [TO], CHỦ ĐỀ, VĂN BẢN]
server = smtplib. MÁY CHỦ SMTP]
người phục vụ. sendmail[TỪ, ĐẾN, tin nhắn]
người phục vụ. từ bỏ[]
115] Mô tả cách tạo số ngẫu nhiên trong Python
trả lời. Mô-đun tiêu chuẩn ngẫu nhiên thực hiện một trình tạo số ngẫu nhiên. \
Ngoài ra còn có nhiều thứ khác trong mô-đun này, chẳng hạn như
thống nhất [a, b] trả về một số dấu phẩy động trong phạm vi [a, b]
randint[a, b] trả về một số nguyên ngẫu nhiên trong phạm vi [a, b]
random[] trả về một số dấu phẩy động trong phạm vi [0, 1]
Đoạn mã sau hiển thị cách sử dụng cả ba chức năng của mô-đun ngẫu nhiên
Ghi chú. đầu ra của mã này sẽ khác nhau mỗi khi nó được thực thi
import random
tôi = ngẫu nhiên. randint[1,99]# tôi khởi tạo ngẫu nhiên bởi số nguyên trong phạm vi 1 & 99
j= ngẫu nhiên. thống nhất [1,999]# j được khởi tạo ngẫu nhiên bằng float giữa phạm vi 1 và 999
k= ngẫu nhiên. random[]# k được khởi tạo ngẫu nhiên bởi float giữa phạm vi 0 & 1
in[“tôi. " ,tôi]
in[“j. ” ,j]
in[“k. ” ,k]
đầu ra
['tôi. ’, 64]
[‘j . ’, 701. 85008797642115]
['k. ’, 0. 18173593240301023]
đầu ra
['tôi. ’, 83]
[‘j . ’, 56. 817584548210945]
['k. ’, 0. 9946957743038618]
116] Câu lệnh tùy chọn được sử dụng trong câu lệnh thử ngoại trừ trong Python là gì?
trả lời. Có hai mệnh đề tùy chọn được sử dụng trong câu lệnh try except
1. mệnh đề khác. It is useful for code that must be executed when the try block does not create any exception
2. mệnh đề cuối cùng. Nó hữu ích cho mã phải được thực thi bất kể có tạo ngoại lệ hay không
117] Cái gì dùng để tạo chuỗi Unicode trong Python?
trả lời. Add u before the string
>>> u ‘kiểm tra’
118] Công dụng của tính năng List Comprehensions của Python là gì?
trả lời. Tính năng hiểu danh sách giúp tạo và quản lý danh sách theo cách đơn giản và rõ ràng hơn so với sử dụng map[], filter[] và lambda. Mỗi cách hiểu danh sách bao gồm một biểu thức theo sau bởi một mệnh đề, sau đó là 0 hoặc nhiều hơn cho hoặc nếu
điều khoản
119] Which all are the operating system that Python can run on?
trả lời. Python có thể chạy trên mọi hệ điều hành như UNIX/LINUX, Mac, Windows và các hệ điều hành khác
120] What is the statement that can be used in Python if a statement is required syntactically but the program requires no action?
trả lời. Pass is a no-operation/action statement in python
Nếu chúng ta muốn tải một mô-đun và nếu nó không tồn tại, chúng ta đừng bận tâm, chúng ta hãy thử thực hiện tác vụ khác. Ví dụ sau đây chứng minh rằng
Cố gắng
Nhập mô-đun1
Ngoại trừ
Vượt qua
121] Việc triển khai Java của Python thường được gọi là gì?
trả lời. Jython
122] Phương thức join[] trong python thuộc về phương thức nào?
trả lời. phương pháp chuỗi
123]Python có hỗ trợ câu lệnh switch hoặc case trong Python không?
Ans. Không. Bạn có thể sử dụng nhiều if-else, vì không cần điều này
124] Việc triển khai từ điển Pythons được thực hiện như thế nào?
trả lời. Using curly brackets -> {}
E. g. {'một'. ’123′, ‘b’. ’456′}
125] Ngôn ngữ mà Python đã có các tính năng hoặc bắt nguồn từ các tính năng của nó là ngôn ngữ nào?
trả lời. Hầu hết các ngôn ngữ lập trình hướng đối tượng kể tên một số là C ++, CLISP và Java là ngôn ngữ mà Python đã có các tính năng hoặc bắt nguồn từ các tính năng của nó
126] Ngôn ngữ lập trình Python có nhược điểm gì?
trả lời. Một trong những nhược điểm của ngôn ngữ lập trình Python là nó không phù hợp với các tác vụ nhanh và cần nhiều bộ nhớ
Naveen E
Tác giả
Hola nhìn trộm. Gặp gỡ kẻ cuồng phiêu lưu, tìm kiếm sự sống trong từng khoảnh khắc, tương tác và viết tại Asha24