当前位置: 首页 > 编程笔记 >

程序员必备的Python技巧和窍门?

曹钊
2023-03-14
本文向大家介绍程序员必备的Python技巧和窍门?,包括了程序员必备的Python技巧和窍门?的使用技巧和注意事项,需要的朋友参考一下

在本文中,我们将介绍一些有用的python技巧和窍门,当您在竞争性编程中编写程序时或在您的公司中使用它们时,它们将减少代码并优化执行,因此非常有用。

就地交换两个数字

x, y = 50, 70
print(x, y)

#swapping
x, y = y, x
print(x, y)

输出结果

50 70
70 50

从列表创建单个字符串

lst = ['What', 'a', 'fine', 'morning']
print(" ".join(lst))

输出结果

What a fine morning

从列表中删除重复项

# Remove duplicates from a list

#This method will not preserve the order
lst = [2, 4, 4 ,9 , 13, 4, 2]
print("Original list: ", lst)
new_lst = list(set(lst))
print(new_lst)

# Below method will preserve the order
from collections import OrderedDict
lst = [2, 4, 4 ,9 , 13, 4, 2]
print(list(OrderedDict.fromkeys(lst).keys()))

输出结果

Original list: [2, 4, 4, 9, 13, 4, 2]
[9, 2, 4, 13]
[2, 4, 9, 13]

反转字符串

#Reverse a string
s = "Hello, World!"
print(s[::-1])

letters = ("abcdefghijklmnopqrstuvwxyz")
print(letters[::-1])

输出结果

!dlroW ,olleH
Zyxwvutsrqponmlkjihgfedcba

倒转列表

# Reversing a list

lst = [20, 40 , 60, 80]
print(lst[::-1])

输出结果

[80, 60, 40, 20]

转置二维数组

#Transpose of a 2d array, that means if the matrix is 2 * 3 after transpose it will be 3* 2 matrix.

matrix = [['a', 'b', 'c'], ['d', 'e', 'f']]
transMatrix = zip (*matrix)
print(list (transMatrix))

输出结果

[('a', 'd'), ('b', 'e'), ('c', 'f')]

检查两个字符串是否是字谜

#Check if two strings are anagrams

from collections import Counter

def is_anagram (str1, str2):
return Counter(str1) == Counter(str2)

print(is_anagram('hello', 'ollhe'))
#and
print(is_anagram('Hello', 'hello'))

输出结果

True
False

在python中检查对象

#Inspect an object in pyton

lst =[1, 3, 4, 7, 9]
print(dir(lst))

输出结果

['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']

列举列表

#Enumerate a list
lst = [20, 10, 40, 50 , 30, 40]
for i, value in enumerate(lst):
print(i, ': ', value)

输出结果

0 : 20
1 : 10
2 : 40
3 : 50
4 : 30
5 : 40

任何数量的阶乘

#Factorial of any number

import functools

result = (lambda s: functools.reduce(int. __mul__, range(1, s+1), 1))(5)
print(result)

输出结果

120

根据两个相关序列创建字典

#Creating a dictionary from two related sequences
x1 = ('Name', 'EmpId', 'Sector')
y1 = ('Zack', 4005, 'Finance')
print(dict (zip(x1, y1)))

输出结果

{'Name': 'Zack', 'EmpId': 4005, 'Sector': 'Finance'}
 类似资料:
  • 本文向大家介绍程序员必备的Java技巧和窍门,包括了程序员必备的Java技巧和窍门的使用技巧和注意事项,需要的朋友参考一下 在尝试学习任何语言之前,有必要了解基础知识,并保持概念清晰。在本文中,我们将看到一些对Java发烧友有帮助的提示和技巧。 清楚地了解数组和数组列表之间的区别-数据结构起着重要的作用,因为它们决定了如何存储数据,如何访问,操纵数据以及最终向用户显示数据。 谨慎使用字符串-应该清

  • 现在应该对Vim有了一个很好的了解了,接下来讨论Vim提高生产力的一些提示和技巧。 在本节中,将讨论以下主题内容 - 将空格转换为制表符,反之亦然 突出拼写错误的单词 单词完成 逐个字符地复制行 缩进代码 更改文件格式 1. 将空格转换为制表符,反之亦然 将制表符转换为空格 如果正在编辑文件并且想要将输入的制表符转换为空格,请执行以下命令 - 请注意,此命令不会将现有制表符更改为空格。要实现此目的

  • 附录 C. 技巧和窍门 第 1 章 安装 Python 第 2 章 第一个 Python 程序 2.1. 概览 在 Windows 的 ActivePython IDE 中, 可以选择 File->Run... (Ctrl-R) 来运行 Python 程序。输出结果将显示在交互窗口中。 在 Mac OS 的 Python IDE 中, 可以选择 Python->Run window... (Cmd

  • 在小册最后,介绍了 HR 面试应该注意的问题,重点分享了作为一个 Web 前端工程师怎么对自己进行估值,然后跟 HR 进行沟通,拿到自己可以接受的 offer。最后还介绍了一些面试注意事项,在面试整个流程中,太多主观因素,细节虽小也可能决定候选人面试的结果。

  • 你可以统计查询结果的数目而不必实际的返回他们: ( (Integer) session.createQuery("select count(*) from ....").iterate().next() ).intValue() 若想根据一个集合的大小来进行排序,可以使用如下的语句: select usr.id, usr.name from User as usr left join us

  • 本文向大家介绍必备的JS调试技巧汇总,包括了必备的JS调试技巧汇总的使用技巧和注意事项,需要的朋友参考一下 前言:任何一个编程者都少不了要去调试代码,不管你是高手还是菜鸟,调试程序都是一项必不可少的工作。一般来说调试程序是在编写代码之后或测试期修改Bug 时进行的,往往在调试代码期间更加能够体现出编程者的水平高低以及分析问题的准确度。不少初学者在寻找错误原因时,总是不得要领,花费了大量时间却无法解