”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > Python 代码片段

Python 代码片段

发布于2024-11-01
浏览:532

Python Code Snippets

Arrays

Lists

# Creating a list
my_list = []
my_list = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

# List of different data types
mixed_list = [1, "hello", 3.14, True]

# Accessing elements
print(my_list[0])  # Output: 1
print(my_list[-1]) # Output: 5

# Append to the end
my_list.append(6)

# Insert at a specific position
my_list.insert(2, 10)

# Find an element in an array
index=my_list.find(element)

# Remove by value
my_list.remove(10)

# Remove by index
removed_element = my_list.pop(2)

# Length of the list
print(len(my_list))

# Slicing [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# sequence[start:stop:step]

print(my_list[1:4])  # Output: [1, 2, 3]
print(my_list[5:])  # Output: [5, 6, 7, 8, 9]
print(my_list[:5])  # Output: [0, 1, 2, 3, 4]
print(my_list[::2])  # Output: [0, 2, 4, 6, 8]
print(my_list[-4:])  # Output: [6, 7, 8, 9]
print(my_list[:-4])  # Output: [0, 1, 2, 3, 4, 5]
print(my_list[::-1])  # Output: [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
print(my_list[8:2:-2])  # Output: [8, 6, 4]
print(my_list[1:8:2])  # Output: [1, 3, 5, 7]
print(my_list[-2:-7:-1])  # Output: [8, 7, 6, 5, 4]

# Reversing a list
my_list.reverse()

# Sorting a list
my_list.sort()

Permutation & Combination

import itertools

# Example list
data = [1, 2, 3]

# Generating permutations of the entire list
perms = list(itertools.permutations(data))
print(perms)
# Output: [(1, 2, 3), (1, 3, 2), (2, 1, 3), (2, 3, 1), (3, 1, 2), (3, 2, 1)]

# Generating permutations of length 2
perms_length_2 = list(itertools.permutations(data, 2))
print(perms_length_2)
# Output: [(1, 2), (1, 3), (2, 1), (2, 3), (3, 1), (3, 2)]

combinations(iterable, r) #order does not matter

Generating Permutations Manually
You can also generate permutations manually using recursion. Here’s a simple implementation:

def permute(arr):
    result = []

    # Base case: if the list is empty, return an empty list
    if len(arr) == 0:
        return [[]]

    # Recursive case
    for i in range(len(arr)):
        elem = arr[i]
        rest = arr[:i]   arr[i 1:]
        for p in permute(rest):
            result.append([elem]   p)

    return result

Stack

(list can be used as stack)

st=[]
st.append()
st.pop()
top_element = stack[-1]

Tips

1) Strip:
It is used to remove leading and trailing whitespace (or other specified characters) from a string

#EX. (1,2) to 1,2
s.strip('()')

2) Don't use normal dictionary

from collections import defaultdict
dictionary=defaultdict(int)

3) Important checking and convertion

s.isdigit()
s.isalpha()
s.isalnum()
s.islower()
s.isupper()
s.lower()
s.upper()

4) Non-Trivial

round(number, decimal_digits)
ord(each)-ord('a') 1 # value of an alphabet
#/ (Floating-Point Division)
#// (Floor Division)
maxim = float('-inf')
minim = float('inf')
unique_lengths.sort(reverse=True)
s.count('x')

list1 = [1, 2, 3]
iterable = [4, 5, 6]
list1.extend(iterable)

position.replace('(', '').replace(')', '')

expression = "2   3 * 4"
result = eval(expression)
print(result) 

#Determinant
import numpy as 
arr=[[1,2,3],[3,4,5],[5,6,7]]
print(np.linalg.det(np.array(arr)))

Sorted

my_list = [3, 1, 4, 1, 5]
sorted_list = sorted(my_list)

my_tuple = (3, 1, 4, 1, 5)
sorted_list = sorted(my_tuple)

my_dict = {'apple': 3, 'banana': 1, 'cherry': 2}
sorted_keys = sorted(my_dict)

my_list = [3, 1, 4, 1, 5]
sorted_list = sorted(my_list, reverse=True)

Enumerate

my_list = ['a', 'b', 'c']
for index, value in enumerate(my_list):
    print(index, value)

Pass by Object Reference

Immutable Types (like integers, strings, tuples):

def modify_immutable(x):
    x = 10  # Rebinding the local variable to a new object
    print("Inside function:", x)

a = 5
modify_immutable(a) #prints 10
print("Outside function:", a) #prints 5

Mutable Types (like lists, dictionaries, sets):

def modify_mutable(lst):
    lst.append(4)  # Modifying the original list object
    print("Inside function:", lst)

my_list = [1, 2, 3]
modify_mutable(my_list) # [1,2,3]
print("Outside function:", my_list) # [1,2,3,4]

Numpy arrays (for numerical operations)

import numpy as np

# Creating a 1D array
arr_1d = np.array([1, 2, 3, 4, 5])

# Creating a 2D array
arr_2d = np.array([[1, 2, 3], [4, 5, 6]])

# Creating an array filled with zeros
zeros = np.zeros((3, 4))

# Creating an array filled with ones
ones = np.ones((2, 3))

# Creating an array with a range of values
range_arr = np.arange(0, 10, 2)

# Creating an array with evenly spaced values
linspace_arr = np.linspace(0, 1, 5)

# Creating an identity matrix
identity_matrix = np.eye(3)

# Shape of the array
shape = arr_2d.shape  # Output: (2, 3)

# Size of the array (total number of elements)
size = arr_2d.size  # Output: 6

# Element-wise addition
arr_add = arr_1d   5  # Output: array([6, 7, 8, 9, 10])

# Element-wise subtraction
arr_sub = arr_1d - 2  # Output: array([ -1, 0, 1, 2, 3])

# Element-wise multiplication
arr_mul = arr_1d * 2  # Output: array([ 2, 4, 6, 8, 10])

# Element-wise division
arr_div = arr_1d / 2  # Output: array([0.5, 1. , 1.5, 2. , 2.5])

# Sum
total_sum = np.sum(arr_2d)  # Output: 21

# Mean
mean_value = np.mean(arr_2d)  # Output: 3.5

# Standard deviation
std_dev = np.std(arr_2d)  # Output: 1.707825127659933

# Maximum and minimum
max_value = np.max(arr_2d)  # Output: 6
min_value = np.min(arr_2d)  # Output: 1

# Reshaping
reshaped_arr = arr_1d.reshape((5, 1))

# Flattening
flattened_arr = arr_2d.flatten()

# Transposing
transposed_arr = arr_2d.T

# Indexing
element = arr_2d[1, 2]  # Output: 6

# Slicing
subarray = arr_2d[0:2, 1:3]  # Output: array([[2, 3], [5, 6]])

Astype

It is a function in NumPy used to convert a numpy array to different data type.

# Datatypes: np.int32,np.float32,np.float64,np.str_
import numpy as np

# Create an integer array
int_array = np.array([1, 2, 3, 4, 5], dtype=np.int32)

# Convert to float
float_array = int_array.astype(np.float32)

print("Original array:", int_array)
print("Converted array:", float_array)

Reshape

It is a powerful tool for changing the shape of an array without altering its data

import numpy as np

# Create a 1D array
array = np.arange(12)

# Reshape to a 2D array (3 rows x 4 columns)
reshaped_array = array.reshape((3, 4))

Matplotlib

import numpy as np
import matplotlib.pyplot as plt

# Create a random 2D array
data = np.random.rand(10, 10)

# Create a figure with a specific size and resolution
plt.figure(figsize=(8, 6), dpi=100)

# Display the 2D array as an image
plt.imshow(data, cmap='viridis', interpolation='nearest')

# Add a color bar to show the scale of values
plt.colorbar()

# Show the plot
plt.show()

Dictionary

# Creating an empty dictionary
# Maintains ascending order like map in cpp
my_dict = {}

# Creating a dictionary with initial values
my_dict = {'name': 'Alice', 'age': 25, 'city': 'New York'}

# Creating a dictionary using the dict() function
my_dict = dict(name='Alice', age=25, city='New York')

# Accessing a value by key
name = my_dict['name']  # Output: 'Alice'

# Using the get() method to access a value
age = my_dict.get('age')  # Output: 25
country = my_dict.get('country')  # Output: None

# Adding a new key-value pair
my_dict['email'] = '[email protected]'

# Updating an existing value
my_dict['age'] = 26

# Removing a key-value pair using pop()
age = my_dict.pop('age')  # Removes 'age' and returns its value

# Getting all keys in the dictionary
keys = my_dict.keys()  # Output: dict_keys(['name', 'email'])

# Getting all values in the dictionary
values = my_dict.values()  # Output: dict_values(['Alice', '[email protected]'])

# Iterating over keys
for key in my_dict:
    print(key)

# Iterating over values
for value in my_dict.values():
    print(value)

# Iterating over key-value pairs
for key, value in my_dict.items():
    print(f"{key}: {value}")

Defaultdict

from collections import defaultdict

d = defaultdict(int)

# Initializes 0 to non-existent keys
d['apple']  = 1
d['banana']  = 2

Set

# Creating an empty set
my_set = set()

# Creating a set with initial values
my_set = {1, 2, 3, 4, 5}

# Creating a set from a list
my_list = [1, 2, 3, 4, 5]
my_set = set(my_list)

# Creating a set from a string
my_set = set('hello')  # Output: {'e', 'h', 'l', 'o'}

# Adding an element to a set
my_set.add(6)  # my_set becomes {1, 2, 3, 4, 5, 6}

# Removing an element from a set (raises KeyError if not found)
my_set.remove(3)  # my_set becomes {1, 2, 4, 5, 6}

# Removing and returning an arbitrary element from the set
element = my_set.pop()  # Returns and removes an arbitrary element

String

# Single quotes
str1 = 'Hello'

# Double quotes
str2 = "World"

# Triple quotes for multi-line strings
str3 = '''This is a 
multi-line string.'''

# Raw strings (ignores escape sequences)
raw_str = r'C:\Users\Name'

str1 = 'Hello'

# Accessing a single character
char = str1[1]  # 'e'

# Accessing a substring (slicing)
substring = str1[1:4]  # 'ell'

# Negative indexing
last_char = str1[-1]  # 'o'

# Using   operator
concatenated = 'Hello'   ' '   'World'  # 'Hello World'

# Using join method
words = ['Hello', 'World']
concatenated = ' '.join(words)  # 'Hello World'

name = 'Alice'
age = 25

# String formatting
formatted_str = f'My name is {name} and I am {age} years old.'

# Convert to uppercase
upper_str = str1.upper()  # 'HELLO WORLD'

# Convert to lowercase
lower_str = str1.lower()  # 'hello world'

# Convert to capitalize
capital_str = str1.capitalize()  # 'Hello world'

str1 = '  Hello World  '

# Remove leading and trailing whitespace
trimmed = str1.strip()  # 'Hello World'

str1 = 'Hello World Python'

# Split the string into a list of substrings
split_list = str1.split()  # ['Hello', 'World', 'Python']

# Split the string with a specific delimiter
split_list = str1.split(' ')  # ['Hello', 'World', 'Python']

# Join a list of strings into a single string
joined_str = ' '.join(split_list)  # 'Hello World Python'

str1 = 'Hello World'

# Find the position of a substring
pos = str1.find('World')  # 6


str1 = 'Hello123'

# Check if all characters are alphanumeric
is_alnum = str1.isalnum()  # True

# Check if all characters are alphabetic
is_alpha = str1.isalpha()  # False

# Check if all characters are digits
is_digit = str1.isdigit()  # False

# Check if all characters are lowercase
is_lower = str1.islower()  # False

# Check if all characters are uppercase
is_upper = str1.isupper()  # False

Stay Connected!
If you enjoyed this post, don’t forget to follow me on social media for more updates and insights:

Twitter: madhavganesan
Instagram: madhavganesan
LinkedIn: madhavganesan

版本声明 本文转载于:https://dev.to/madgan95/python-code-snippets-1pkl?1如有侵犯,请联系[email protected]删除
最新教程 更多>
  • 如何检查对象是否具有Python中的特定属性?
    如何检查对象是否具有Python中的特定属性?
    方法来确定对象属性存在寻求一种方法来验证对象中特定属性的存在。考虑以下示例,其中尝试访问不确定属性会引起错误: >>> a = someClass() >>> A.property Trackback(最近的最新电话): 文件“ ”,第1行, attributeError:SomeClass实...
    编程 发布于2025-04-08
  • 为什么PHP的DateTime :: Modify('+1个月')会产生意外的结果?
    为什么PHP的DateTime :: Modify('+1个月')会产生意外的结果?
    使用php dateTime修改月份:发现预期的行为在使用PHP的DateTime类时,添加或减去几个月可能并不总是会产生预期的结果。正如文档所警告的那样,“当心”这些操作的“不像看起来那样直观。 考虑文档中给出的示例:这是内部发生的事情: 现在在3月3日添加另一个月,因为2月在2001年只有2...
    编程 发布于2025-04-08
  • 为什么尽管有效代码,为什么在PHP中捕获输入?
    为什么尽管有效代码,为什么在PHP中捕获输入?
    在php ;?>" method="post">The intention is to capture the input from the text box and display it when the submit button is clicked.但是,输出...
    编程 发布于2025-04-08
  • 如何使用node-mysql在单个查询中执行多个SQL语句?
    如何使用node-mysql在单个查询中执行多个SQL语句?
    在node-mysql node-mysql文档最初出于安全原因最初禁用多个语句支持,因为它可能导致SQL注入攻击。要启用此功能,您需要在创建连接时将倍增设置设置为true: var connection = mysql.createconnection({{multipleStatement:...
    编程 发布于2025-04-08
  • 为什么使用Firefox后退按钮时JavaScript执行停止?
    为什么使用Firefox后退按钮时JavaScript执行停止?
    导航历史记录问题:JavaScript使用Firefox Back Back 此行为是由浏览器缓存JavaScript资源引起的。要解决此问题并确保在后续页面访问中执行脚本,Firefox用户应设置一个空功能。 警报'); }; alert('inline Alert')...
    编程 发布于2025-04-08
  • 如何在Java中执行命令提示命令,包括目录更改,包括目录更改?
    如何在Java中执行命令提示命令,包括目录更改,包括目录更改?
    在java 通过Java通过Java运行命令命令可能很具有挑战性。尽管您可能会找到打开命令提示符的代码段,但他们通常缺乏更改目录并执行其他命令的能力。 solution:使用Java使用Java,使用processBuilder。这种方法允许您:启动一个过程,然后将其标准错误重定向到其标准输出。...
    编程 发布于2025-04-08
  • 如何使用Python理解有效地创建字典?
    如何使用Python理解有效地创建字典?
    在python中,词典综合提供了一种生成新词典的简洁方法。尽管它们与列表综合相似,但存在一些显着差异。与问题所暗示的不同,您无法为钥匙创建字典理解。您必须明确指定键和值。 For example:d = {n: n**2 for n in range(5)}This creates a dicti...
    编程 发布于2025-04-08
  • 如何在鼠标单击时编程选择DIV中的所有文本?
    如何在鼠标单击时编程选择DIV中的所有文本?
    在鼠标上选择div文本单击带有文本内容,用户如何使用单个鼠标单击单击div中的整个文本?这允许用户轻松拖放所选的文本或直接复制它。 在单个鼠标上单击上的div元素中的文本,您可以使用以下Javascript函数:实现以实现此函数: 在您的javascript代码中添加了上述功能。参数。 使用此代...
    编程 发布于2025-04-08
  • 如何干净地删除匿名JavaScript事件处理程序?
    如何干净地删除匿名JavaScript事件处理程序?
    删除匿名事件侦听器将匿名事件侦听器添加到元素中会提供灵活性和简单性,但是当要删除它们时,可以构成挑战,而无需替换元素本身就可以替换一个问题。 element? element.addeventlistener(event,function(){/在这里工作/},false); 要解决此问题,请考虑...
    编程 发布于2025-04-08
  • 我什么时候应该在MySQL中使用复合主键,如何有效地实现它们?
    我什么时候应该在MySQL中使用复合主键,如何有效地实现它们?
    在MySQL中的复合主键:选择和实现的指南在设计关系数据库时,主键的选择至关重要。在MySQL中,复合主键提供了一种通过组合多个列来唯一识别行的方法。在本文中,我们将探讨合成的主要键的正确创建,并解决具有自动插入替代主要键的表的特定情况。 考虑复合主键 在给定的两种tables(tables_1 a...
    编程 发布于2025-04-08
  • 如何将多种用户类型(学生,老师和管理员)重定向到Firebase应用中的各自活动?
    如何将多种用户类型(学生,老师和管理员)重定向到Firebase应用中的各自活动?
    Red: How to Redirect Multiple User Types to Respective ActivitiesUnderstanding the ProblemIn a Firebase-based voting app with three distinct user type...
    编程 发布于2025-04-08
  • 为什么使用固定定位时,为什么具有100%网格板柱的网格超越身体?
    为什么使用固定定位时,为什么具有100%网格板柱的网格超越身体?
    网格超过身体,用100%grid-template-columns 为什么在grid-template-colms中具有100%的显示器,当位置设置为设置的位置时,grid-template-colly修复了?问题: 考虑以下CSS和html: class =“ snippet-code”> g...
    编程 发布于2025-04-08
  • 为什么Microsoft Visual C ++无法正确实现两台模板的实例?
    为什么Microsoft Visual C ++无法正确实现两台模板的实例?
    在Microsoft Visual C 中,Microsoft consions用户strate strate strate strate strate strate strate strate strate strate strate strate strate strate strate st...
    编程 发布于2025-04-08
  • 如何解析MySQL“ MySQL Server正在使用 - 安全文件 -  priv选项”错误?
    如何解析MySQL“ MySQL Server正在使用 - 安全文件 - priv选项”错误?
    在mySQL 可以解决此问题,您有两个主要选项: [1。重新定位文件:将文件加载到由Secure-File-Priv变量指定的目录中。要确定此目录,请执行以下查询:显示诸如“ Secure_File_Priv”之类的变量。禁用安全文件:禁用安全文件,请将其从mySQL启动参数中删除。这通常需要修...
    编程 发布于2025-04-08
  • 如何使用Depimal.parse()中的指数表示法中的数字?
    如何使用Depimal.parse()中的指数表示法中的数字?
    在尝试使用Decimal.parse(“ 1.2345e-02”中的指数符号表示法表示的字符串时,您可能会遇到错误。这是因为默认解析方法无法识别指数符号。 成功解析这样的字符串,您需要明确指定它代表浮点数。您可以使用numbersTyles.Float样式进行此操作,如下所示:[&& && && ...
    编程 发布于2025-04-08

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3