Apakah teknik yang biasa digunakan dalam pengaturcaraan Python?

PHPz
Lepaskan: 2023-04-22 21:31:06
ke hadapan
1212 orang telah melayarinya

1. Terbalik rentetan

Gunakan penghirisan Python untuk membalikkan rentetan:

# Reversing a string using slicing

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

print(reversed_string)

# Output
# EDCBA
Salin selepas log masuk

2.

3 Cari elemen unik dalam rentetan
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
Salin selepas log masuk

Gunakan konsep set untuk mencari elemen unik dalam rentetan:

4 dan senaraikan n kali
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
Salin selepas log masuk

Anda boleh mencetak rentetan atau senarai n kali menggunakan tanda darab (*):

5. Penjanaan senarai
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]
Salin selepas log masuk

6. Pertukaran pembolehubah
# 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]
Salin selepas log masuk

7 Pisahkan rentetan ke dalam senarai subrentetan
a = 1
b = 2

a, b = b, a

print(a) # 2
print(b) # 1
Salin selepas log masuk

Gunakan fungsi .split():

8 ke dalam rentetan
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']
Salin selepas log masuk

9 Periksa sama ada rentetan itu ialah palindrom
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
Salin selepas log masuk

10 Kira bilangan elemen dalam senarai
my_string = "abcba"

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

# Output
# palindrome
Salin selepas log masuk

11 . Tentukan sama ada dua rentetan adalah Anagram
# 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)]
Salin selepas log masuk

Maksud Anagram ialah dalam dua perkataan, setiap perkataan Inggeris (tidak termasuk huruf besar dan kecil) muncul dalam bilangan kali yang sama untuk Anagram.

12. Gunakan modul try-except-else-block
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
Salin selepas log masuk

kecuali untuk mendapatkan pengendalian pengecualian:

13. nilai
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
Salin selepas log masuk

14. Semak penggunaan memori objek
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
Salin selepas log masuk

15. Cantumkan kamus
import sys

num = 21

print(sys.getsizeof(num))

# In Python 2, 24
# In Python 3, 28
Salin selepas log masuk

16. Kira masa yang diperlukan untuk melaksanakan sekeping kod
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}
Salin selepas log masuk

Gunakan kelas masa untuk mengira masa yang diperlukan untuk menjalankan sekeping kod:

17 Peluasan senarai
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
Salin selepas log masuk

18 . Pensampelan senarai
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]
Salin selepas log masuk

19 Pendigitalan
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
Salin selepas log masuk

Tukar integer kepada senarai nombor:

20 >Semak sama ada setiap elemen dalam senarai adalah Satu-satunya:
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]
Salin selepas log masuk

Atas ialah kandungan terperinci Apakah teknik yang biasa digunakan dalam pengaturcaraan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan