python的一些有趣的小知识

214 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第11天,点击查看活动详情

"Gawky and proud of it."

"On the Internet, nobody knows you're a dog."

今天就来介绍一些python相关的有趣和使用的小技巧吧!

包的命名

在pycharm中,文件(directory)没有办法改成包(package)的原因,有可能是命名,不可以命名问xx-xx,必须改成xx_xx。

python加密

关于python加密的一种有趣的办法,其实是一种很简单的办法,当你跑起来后把本地工程目录文件全部删除就可以,当前前提是你不可以搞什么动态import了。

列表推导式

列表推导式和三元表达式都是我日常编程中非常喜欢的一种写法,这跟python语言的特性优美密不可分。列表推导式是一种非常优雅的基于其他列表来创建新列表的方法,示例如下所示:

int_list = [1,2,3,4]

new_list = [x*x for x in int_list]

print(new_list)
# [1,4,9,16]

交换两个变量

Python 中交换两个变量的数值是非常简单的,且完全不需要第三个变量作为中间值。示例:

a = 1
b = 2

a, b = b, a

print(a) # 2
print(b) # 1

从列表中的所有元素创建一个字符串

str_list = ["I", "am", "a", "handsome", "boy"]
print(" ".join(str_list))

反转字符串、反转数字、反转列表

a_str="abcde"
print(a_str[::-1])

b_str="abcde"
for str_info in reversed(b_str):
    print(str_info)

c_num=123456789
print(int(str(num)[::-1]))


d_list = [1,2,3,4]
print(d_list[::-1])

for - else:

这个是python中的一个很神奇的语法,在python中for的优先级是高于if的,这就会导致else在前方没有break或者return的话会继续执行else中的语句,代码如下:

for i in range(2):
	print(i)
else:
	print(i,'hello else')
# output:
0
1
1 hello else

三元表达式:

这个真的,真的很实用。不仅能让你代码变得更加简洁,而且确实优雅了不少。如果是C或者C++的老程序前辈一定会怀念这东西。Python也可以实现,是不是特别梦幻

x = 1 
y = -1 if x == 1 else 1
print(i)
# output:
-1

哈哈,是不是超有趣,而且超干净。