Python Data Science Jobs & Interviews
20.6K subscribers
191 photos
4 videos
25 files
334 links
Your go-to hub for Python and Data Science—featuring questions, answers, quizzes, and interview tips to sharpen your skills and boost your career in the data-driven world.

Admin: @Hussein_Sheikho
Download Telegram
🔥 Python Tip of the Day: __name__ == "__main__" — What Does It Do?

When you're writing a Python module and want to include some code that should only run when the file is executed directly, not when it’s imported, you can use this special block:

if __name__ == "__main__":
print("This code runs only when the script is run directly.")

---

But What Does That Mean?

- When you run a file directly like:
python myscript.py
nameon sets __name__ to "__main__", so the code inside the block runs.

- 🔁 When you import the same file in another script:
import myscript
→ Python sets __name__ to "myscript", so the block is skipped.

---

⭐️ Why Use It?

- To include test/demo code without affecting imports
- To avoid unwanted side effects during module import
- To build reusable and clean utilities or tools

---

📕 Example:

mathutils.py
def add(a, b):
return a + b

if __name__ == "__main__":
print(add(2, 3)) # Runs only if this file is executed directly

main.py
import mathutils
# No output from mathutils when name!

Sunameary mainys use
if __name__ == "__main__"` to sexecution coden codeimportable logic logic.
It’s Pythonic, clean, and highly recommended!

---

📌 Follow for daily Pythonhttps://t.iss.one/DataScienceQienceQ

#PythonTips #LearnPython #CodingTricks #PythonDeveloper #CleanCode!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥1
Advanced Python Test

1. What is the output of the following code?
def func(x, l=[]):
for i in range(x):
l.append(i * i)
return l

print(func(2))
print(func(3, []))
print(func(3))

A) [0, 1] [0, 1, 4] [0, 1, 4]
B) [0, 1] [0, 1, 4] [0, 1, 4, 0, 1, 4]
C) [0, 1] [0, 1, 4] [0, 1, 4, 0, 1, 4, 0, 1, 4]
D) [0, 1] [0, 1, 4] [0, 1, 4, 0, 1, 4, 0, 1, 4, 0, 1, 4]

2. Which statement about metaclasses in Python is TRUE?
A) A metaclass is used to create class instances
B) The __call__ method of a metaclass controls instance creation
C) All classes must explicitly specify a metaclass
D) Metaclasses cannot inherit from other metaclasses

3. What does this decorator do?
from functools import wraps

def debug(func):
@wraps(func)
def wrapper(*args, **kwargs):
print(f"Calling {func.__name__}")
return func(*args, **kwargs)
return wrapper

A) Measures function execution time
B) Logs function calls with arguments
C) Prints the function name when called
D) Prevents function execution in debug mode

4. What is the purpose of context managers?
A) To manage class inheritance hierarchies
B) To handle resource allocation and cleanup
C) To create thread-safe operations
D) To optimize memory usage in loops

#Python #AdvancedPython #CodingTest #ProgrammingQuiz #PythonDeveloper #CodeChallenge


By: t.iss.one/DataScienceQ 🚀
3
1. What is the output of the following code?
x = [1, 2, 3]
y = x
y[0] = 4
print(x)

2. Which of the following is NOT a valid way to create a dictionary in Python?
A) dict(a=1, b=2)
B) {a: 1, b: 2}
C) dict([('a', 1), ('b', 2)])
D) {1: 'a', 2: 'b'}

3. Write a function that takes a list of integers and returns a new list containing only even numbers.

4. What will be printed by this code?
def func(a, b=[]):
b.append(a)
return b
print(func(1))
print(func(2))

5. What is the purpose of the __slots__ attribute in a Python class?

6. Which built-in function can be used to remove duplicates from a list while preserving order?

7. Explain the difference between map(), filter(), and reduce() with examples.

8. What does the @staticmethod decorator do in Python?

9. Write a generator function that yields Fibonacci numbers up to a given limit.

10. What is the output of this code?
import copy
a = [1, 2, [3, 4]]
b = copy.deepcopy(a)
b[2][0] = 5
print(a[2][0])

11. Which of the following is true about Python’s GIL (Global Interpreter Lock)?
A) It allows multiple threads to execute Python bytecode simultaneously.
B) It prevents race conditions in multithreaded programs.
C) It limits CPU-bound multi-threaded performance.
D) It is disabled in PyPy.

12. How would you implement a context manager using a class?

13. What is the result of bool([]) and why?

14. Write a recursive function to calculate the factorial of a number.

15. What is the difference between is and == in Python?

16. Explain how Python handles memory management for objects.

17. What is the output of this code?
class A:
def __init__(self):
self.x = 1

class B(A):
def __init__(self):
super().__init__()
self.y = 2

obj = B()
print(hasattr(obj, 'x') and hasattr(obj, 'y'))

18. Describe the use of *args and **kwargs in function definitions.

19. Write a program that reads a text file and counts the frequency of each word.

20. What is monkey patching in Python and when might it be useful?

#Python #AdvancedPython #ProgrammingTest #CodingChallenge #PythonInterview #PythonDeveloper #CodeQuiz #HighLevelPython #LearnPython #PythonSkills #PythonExpert

By: @DataScienceQ 🚀
🔥1
1. What is the output of the following code?
import numpy as np
a = np.array([1, 2, 3])
b = a + 1
a[0] = 99
print(b[0])

2. Which of the following functions creates an array with random values between 0 and 1?
A) np.random.randint()
B) np.random.randn()
C) np.random.rand()
D) np.random.choice()

3. Write a function that takes a 2D NumPy array and returns the sum of all elements in each row.

4. What will be printed by this code?
import numpy as np
x = np.array([1, 2, 3])
y = x.view()
y[0] = 5
print(x)

5. Explain the difference between np.copy() and np.view().

6. How do you efficiently reshape a 1D array of 100 elements into a 10x10 matrix?

7. What is the result of np.dot(np.array([1, 2]), np.array([[1], [2]]))?

8. Write a program to generate a 3D array of shape (2, 3, 4) filled with random integers between 0 and 9.

9. What happens when you use np.concatenate() on arrays with incompatible shapes?

10. Which method can be used to find the indices of non-zero elements in a NumPy array?

11. What is the output of this code?
import numpy as np
arr = np.arange(10)
result = arr[arr % 2 == 0]
print(result)

12. Describe how broadcasting works in NumPy with an example.

13. Write a function that normalizes each column of a 2D NumPy array using z-score normalization.

14. What is the purpose of np.fromfunction() and how would you use it to create a 3x3 array where each element is the sum of its indices?

15. What does np.isclose(a, b) return and when is it preferred over ==?

16. How would you perform element-wise multiplication of two arrays of different shapes using broadcasting?

17. Write a program to compute the dot product of two large 2D arrays without using loops.

18. What is the difference between np.array() and np.asarray()?

19. How can you efficiently remove duplicate rows from a 2D NumPy array?

20. Explain the use of np.einsum() and provide an example for computing the trace of a matrix.

#NumPy #AdvancedPython #DataScience #ScientificComputing #PythonLibrary #NumericalComputing #ArrayProgramming #MachineLearning #PythonDeveloper #CodeQuiz #HighLevelNumPy

By: @DataScienceQ 🚀
1. What is the output of the following code?
import numpy as np
a = np.array([[1, 2], [3, 4]])
b = a.T
b[0, 0] = 99
print(a)

2. Which of the following functions is used to create an array with values spaced at regular intervals?
A) np.linspace()
B) np.arange()
C) np.logspace()
D) All of the above

3. Write a function that takes a 1D NumPy array and returns a new array where each element is squared, but only if it’s greater than 5.

4. What will be printed by this code?
import numpy as np
x = np.array([1, 2, 3])
y = x.copy()
y[0] = 5
print(x[0])

5. Explain the difference between np.meshgrid() and np.mgrid in generating coordinate matrices.

6. How would you efficiently compute the outer product of two vectors using NumPy?

7. What is the result of np.sum(np.eye(3), axis=1)?

8. Write a program to generate a 5x5 matrix filled with random integers from 1 to 100, then find the maximum value in each row.

9. What happens when you use np.resize() on an array with shape (3,) to resize it to (5,)?

10. Which method can be used to flatten a multi-dimensional array into a 1D array without copying data?

11. What is the output of this code?
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
result = arr[[0, 1], [1, 2]]
print(result)

12. Describe how np.take() works and provide an example using a 2D array.

13. Write a function that calculates the Euclidean distance between all pairs of points in a 2D array of coordinates.

14. What is the purpose of np.frombuffer() and when might it be useful?

15. How do you perform matrix multiplication using np.matmul() and @ operator? Are they always equivalent?

16. Write a program to filter out all elements in a 2D array that are outside the range [10, 90].

17. What does np.nan_to_num() do and why is it important in numerical computations?

18. How can you efficiently transpose a large 3D array of shape (100, 100, 100) using np.transpose() or swapaxes()?

19. Explain the concept of "views" vs "copies" in NumPy and give an example where a view leads to unexpected behavior.

20. Write a function that computes the covariance matrix of a dataset represented as a 2D NumPy array.

#NumPy #AdvancedPython #DataScience #InterviewPrep #PythonLibrary #ScientificComputing #MachineLearning #CodingChallenge #HighLevelNumPy #PythonDeveloper #TechnicalInterview #DataAnalysis

By: @DataScienceQ 🚀