Rumah > Artikel > pembangunan bahagian belakang > Sepuluh Program Python One-Linger Berguna yang Mesti Anda Tahu
Walaupun Python telah melalui 30 tahun sejak dikeluarkan, ia kekal sebagai salah satu bahasa pengaturcaraan peringkat tinggi paling relevan yang wujud. Ramai pembangun memilih untuk menggunakan bahasa ini untuk membangunkan aplikasi yang mudah diselenggara dan memerlukan sedikit usaha manual pada banyak sistem pengendalian dan pengedaran Linux.
Salah satu faedah terbesar Python ialah Ia dapat memintas (pun benar-benar bertujuan ) banyak konvensyen dalam bahasa lain, dan dengan sedikit usaha dari pihak pengaturcara, adalah mungkin untuk menulis "gurauan" kecil yang sangat mudah untuk menyelesaikan tugas. Berikut adalah beberapa contoh!
x, y = y, x
Beginilah rupa konsep ini dalam coretan:
Menjalankan arahan ini dalam konsol harus mengeluarkan "4 1".x = 1 y = 4 x, y = y, x print(x,y)
2. Buat pemfaktoran serbet pantas
reduce(lambda a, b: a * b, range(1, x+1)
Jangan lupa bahawa reduce() ialah sebahagian daripada perpustakaan alat fungsi Python. Coretan kod kelihatan seperti ini:
Konsol anda harus mengeluarkan 479001600 daripada pengiraan khusus ini. Teruskan melakukan "x" yang anda mahu!from functools import reduce x = 12print(reduce(lambda a, b: a * b, range(1, x+1)))
3 Mulakan dan isytiharkan berbilang pembolehubah
x, y, z = 16, 78, 195
4. Buka dan baca fail
Python menghendaki anda mengulangi fail baris demi baris seperti dalam banyak bahasa lain. Walaupun begitu, ia memberikan anda kefungsian penuh untuk membuka dan membaca fail dalam satu baris kod:
Sekarang, jika saya hanya mahu memaparkan teks profil bash lalai saya sendiri, saya akan Tulis seperti ini:[line.strip() for line in open('file.txt')]
[print(line.strip()) for line in open('/home/miguel/.bashrc')]
5. Menulis fail
with open("file.txt",'a',newline='n') as f: f.write("This is a new line in a file")
Anda kini boleh menggunakan program satu baris yang anda pelajari untuk membaca fail untuk menyemak sama ada baris telah ditambahkan dengan betul!
[print(line.strip()) for line in open('file.txt')]
6. Buat senarai julat nombor
lst = [i for i in range(0,10)]
想知道在您的特定Linux安装中实际上有多少个用户名吗?Python有一个很好的方法,通过打开“/etc/passwd”文件,在一行中就可以做到这一点。在这种情况下,我们要做的就是从每行的第一个冒号(":")开始删除所有内容。
print('n'.join(line.split(":",1)[0] for line in open("/etc/passwd")))
如果您没有仔细查看该文件,您可能会惊讶地发现,系统创建的用户比您登录时使用的用户和根用户多得多。
用户列表通常有这么长,因为系统会根据您运行的服务创建自己的身份验证形式。
像任何自尊的语言一样,Python允许你随机化事情,但是它不能不更进一步,允许你在一行中生成密码。诚然,这是一个非常漫长的过程..
pwd = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789 %^*(-_=+)'; print(''.join([pwd[random.randint(0,len(pwd)-1)] for i in range(32)]))
这个特定的代码片段将生成一个32个字符的密码,允许使用空格。根据你的喜好调整。如果您出于某种原因不想在密码中使用空格,请删除字符串声明中的空格。不要忘记导入“随机”库,否则你的代码将无法工作!
如果您正在阅读一个较长的文件,并试图找出其中有多少个特定表达式的实例,这就有点奇怪了:
import re; len(re.findall('d','The dumb lazy cat doesn't know how to hunt birds.'))
在这个特殊的例子中,我们试图找出字母“d”在它后面的字符串中出现了多少次。通过打印输出,控制台让我们知道这封信有3个实例。您可以使用整个单词和在文件中搜索来实现这一点。
通过一点迭代魔法,可以用一个简单的表达式将十六进制代码转换成纯文本:
print(''.join(chr(int(''.join(i), 16)) for i in zip(*[iter('576f772c2049276d2077726974696e6720696e2068657861646563696d616c21')]*2)))
里面的一大堆胡言乱语iter()是一个十六进制表达式,这段代码将其转换为“哇,我在用十六进制写!”
常见问题
虽然Python确实有一些特定于某些编码风格的缺陷,但由于它在可变类型方面的灵活性,Python提供了比其他语言更友好的初学者氛围。它是一种解释型语言,所以它不需要您处理手动分配内存并确保在不再使用时释放内存的繁琐工作。
Python的开发人员强烈反对用新版本使旧代码无效的想法,并且在历史上一直非常小心地确保向后兼容更旧的代码。在2005年,Python社区不得不处理一个棘手的问题reduce()和许多其他功能从标准库中移除并且必须从Python 3000中的另一个导入。一般来说,这些事情都是公开的,如果您的代码停止正常运行,控制台会提供有用的信息,让您找出原因并做出相应的调整。
如果您想使用Python的集成开发环境,有几个跨操作系统的选项可供您选择:
–如果你真的想献身于Python,就用这个吧。这个IDE只专注于Python,包含大量的工具和库,可以帮助您流畅地编写代码。
–如果您希望最终扩展并学习其他语言,VSCode(在Linux中有时称为Code–OSS,在Arch Linux中称为“Code”包)提供了强大的功能以及针对各种语言的集成编译器。
–它允许在任何终端模拟器中非常快速地编辑复杂的文本。它有很高的学习曲线,但应该是每个程序员的武器库。
Atas ialah kandungan terperinci Sepuluh Program Python One-Linger Berguna yang Mesti Anda Tahu. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!