Python プログラミングで一般的に使用されるテクニックは何ですか?

PHPz
リリース: 2023-04-22 21:31:06
転載
1210 人が閲覧しました

1. 文字列の反転

Python スライスを使用して文字列を反転します:

# Reversing a string using slicing

my_string = "ABCDE"
reversed_string = my_string[::-1]

print(reversed_string)

# Output
# EDCBA
ログイン後にコピー

2. 各単語の最初の文字を大文字にします

タイトル関数を使用します 方法:

my_string = "my name is chaitanya baweja"

# using the title() function of string class
new_string = my_string.title()

print(new_string)

# Output
# My Name Is Chaitanya Baweja
ログイン後にコピー

3. 文字列内の固有の要素を検索します。

セットの概念を使用して、文字列内の固有の要素を検索します:

my_string = "aavvccccddddeee"

# converting the string to a set
temp_set = set(my_string)

# stitching set into a string using join
new_string = ''.join(temp_set)

print(new_string)

# output
# cdvae
ログイン後にコピー

4. 文字列とリストの出力を n 回繰り返します

乗算記号 (*) を使用して文字列またはリストを複数回出力できます:

n = 3 # number of repetitions

my_string = "abcd"
my_list = [1,2,3]

print(my_string*n)
# abcdabcdabcd

print(my_list*n)
# [1,2,3,1,2,3,1,2,3]
ログイン後にコピー

5. リストの生成

# Multiplying each element in a list by 2

original_list = [1,2,3,4]

new_list = [2*x for x in original_list]

print(new_list)
# [2,4,6,8]
ログイン後にコピー

6. 変数交換

a = 1
b = 2

a, b = b, a

print(a) # 2
print(b) # 1
ログイン後にコピー

7 . 文字列を部分文字列のリストに分割します。

.split() 関数を使用します:

string_1 = "My name is Chaitanya Baweja"
string_2 = "sample/ string 2"

# default separator ' '
print(string_1.split())
# ['My', 'name', 'is', 'Chaitanya', 'Baweja']

# defining separator as '/'
print(string_2.split('/'))
# ['sample', ' string 2']
ログイン後にコピー

8. 複数の文字列を 1 つの文字列に結合します

list_of_strings = ['My', 'name', 'is', 'Chaitanya', 'Baweja']

# Using join with the comma separator
print(','.join(list_of_strings))

# Output
# My,name,is,Chaitanya,Baweja
ログイン後にコピー

9.文字列は回文です

my_string = "abcba"

if my_string == my_string[::-1]:
    print("palindrome")
else:
    print("not palindrome")

# Output
# palindrome
ログイン後にコピー

10. リスト内の要素の数を数えます

# finding frequency of each element in a list
from collections import Counter

my_list = ['a','a','b','b','b','c','d','d','d','d','d']
count = Counter(my_list) # defining a counter object

print(count) # Of all elements
# Counter({'d': 5, 'b': 3, 'a': 2, 'c': 1})

print(count['b']) # of individual element
# 3

print(count.most_common(1)) # most frequent element
# [('d', 5)]
ログイン後にコピー

11. 2つの文字列がアナグラムであるかどうかを判断します

アナグラムの意味それぞれの英単語を場合(大文字と小文字を除く) が 2 つの単語内に同じ回数出現する場合、Counter クラスを使用して 2 つの文字列がアナグラムかどうかを判断します。

from collections import Counter

str_1, str_2, str_3 = "acbde", "abced", "abcda"
cnt_1, cnt_2, cnt_3  = Counter(str_1), Counter(str_2), Counter(str_3)

if cnt_1 == cnt_2:
    print('1 and 2 anagram')
if cnt_1 == cnt_3:
    print('1 and 3 anagram')

# output
# 1 and 2 anagram
ログイン後にコピー

12. try-excel-else-block モジュール

Except を使用して例外処理を取得します:

a, b = 1,0

try:
    print(a/b)
    # exception raised when b is 0
except ZeroDivisionError:
    print("division by zero")
else:
    print("no exceptions raised")
finally:
    print("Run this always")

# output
# division by zero
# Run this always
ログイン後にコピー

13. 列挙関数を使用してキー/値を取得しますペア

my_list = ['a', 'b', 'c', 'd', 'e']

for index, value in enumerate(my_list):
    print('{0}: {1}'.format(index, value))

# 0: a
# 1: b
# 2: c
# 3: d
# 4: e
ログイン後にコピー

14. オブジェクトのメモリ使用量を確認します

import sys

num = 21

print(sys.getsizeof(num))

# In Python 2, 24
# In Python 3, 28
ログイン後にコピー

15. 辞書を結合

dict_1 = {'apple': 9, 'banana': 6}
dict_2 = {'banana': 4, 'orange': 8}

combined_dict = {**dict_1, **dict_2}

print(combined_dict)
# Output
# {'apple': 9, 'banana': 4, 'orange': 8}
ログイン後にコピー

16. コードの実行にかかる時間を計算します

時間クラスを使用して、コードの実行にかかった時間を計算します:

import time

start_time = time.time()
# Code to check follows
for i in range(10**5):
    a, b = 1,2
    c = a+ b
# Code to check ends
end_time = time.time()
time_taken_in_micro = (end_time- start_time)*(10**6)

print(time_taken_in_micro)

# output
# 18770.217895507812
ログイン後にコピー

17. リスト展開

from iteration_utilities import deepflatten

# if you only have one depth nested_list, use this
def flatten(l):
  return [item for sublist in l for item in sublist]

l = [[1,2,3],[3]]
print(flatten(l))
# [1, 2, 3, 3]

# if you don't know how deep the list is nested
l = [[1,2,3],[4,[5],[6,7]],[8,[9,[10]]]]

print(list(deepflatten(l, depth=3)))
# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
ログイン後にコピー

18. リスト サンプリング

import random

my_list = ['a', 'b', 'c', 'd', 'e']
num_samples = 2

samples = random.sample(my_list,num_samples)
print(samples)
# [ 'a', 'e'] this will have any 2 random values
ログイン後にコピー

19. デジタル化

整数を数値のリストに変換する:

num = 123456

# using map
list_of_digits = list(map(int, str(num)))

print(list_of_digits)
# [1, 2, 3, 4, 5, 6]

# using list comprehension
list_of_digits = [int(x) for x in str(num)]

print(list_of_digits)
# [1, 2, 3, 4, 5, 6]
ログイン後にコピー

20. リスト要素の一意性を確認する

リスト内の各要素が一意であるかどうかを確認する:

def unique(l):
    if len(l)==len(set(l)):
        print("All elements are unique")
    else:
        print("List has duplicates")

unique([1,2,3,4])
# All elements are unique

unique([1,1,2,3])
# List has duplicates
ログイン後にコピー

以上がPython プログラミングで一般的に使用されるテクニックは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:yisu.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート