Python初学者的捷径

下面列出的都是这些年总结的Python的有用的知识点和一些工具。希望对你有所帮助!

交换变量值

x = 6
y = 5

x, y = y, x

print x
>>> 5
print y
>>> 6

内联if语句

print "Hello" if True else "World"
>>> Hello

联接

nfc = ["Packers", "49ers"]
afc = ["Ravens", "Patriots"]
print nfc + afc
>>> [‘Packers‘, ‘49ers‘, ‘Ravens‘, ‘Patriots‘]

print str(1) + " world"
>>> 1 world

print `1` + " world"
>>> 1 world

print 1, "world"
>>> 1 world
print nfc, 1
>>> [‘Packers‘, ‘49ers‘] 1

数字运算

#Floor Division (rounds down)
print 5.0//2
>>> 2

#2 raised to the 5th power
print 2**5
>> 32

注意float数做整除运算后的出来的还是整数

print .3/.1
>>> 2.9999999999999996

print .3//.1
>>> 2.0

数字对比

x = 2

if 3 > x > 1:
    print x
>>> 2

if 1 < x > 0:
    print x
>>> 2

同时遍历两个数组

nfc = ["Packers", "49ers"]
afc = ["Ravens", "Patriots"]

for teama, teamb in zip(nfc, afc):
    print teama + " vs. " + teamb

>>> Packers vs. Ravens
>>> 49ers vs. Patriots

延伸阅读zip方法,请点这里

遍历List并获得index

teams = ["Packers", "49ers", "Ravens", "Patriots"]
for index, team in enumerate(teams):
    print index, team

>>> 0 Packers
>>> 1 49ers
>>> 2 Ravens
>>> 3 Patriots

理解List

这个:

numbers = [1,2,3,4,5,6]
even = []
for number in numbers:
    if number%2 == 0:
        even.append(number)

可以写成:

numbers = [1,2,3,4,5,6]
even = [number for number in numbers if number%2 == 0]

理解Dictionary

和List很相似,Dictionary的这个可以写成:

teams = ["Packers", "49ers", "Ravens", "Patriots"]
print {key: value for value, key in enumerate(teams)}
>>> {‘49ers‘: 1, ‘Ravens‘: 2, ‘Patriots‘: 3, ‘Packers‘: 0}

初始化List的值

items = [0]*3
print items
>>> [0,0,0]

List转换为String

teams = ["Packers", "49ers", "Ravens", "Patriots"]
print ", ".join(teams)
>>> ‘Packers, 49ers, Ravens, Patriots‘

从Dictionary中取得Item

一般来说是这样的,用一个try-except块包裹起来以防要取得的key值不存在:

data = {‘user‘: 1, ‘name‘: ‘Max‘, ‘three‘: 4}
try:
    is_admin = data[‘admin‘]
except KeyError:
    is_admin = False

但是你可以这样:

data = {‘user‘: 1, ‘name‘: ‘Max‘, ‘three‘: 4}
is_admin = data.get(‘admin‘, False)

取List得子集

很简单的取子集的方法:

x = [1,2,3,4,5,6]

#First 3
print x[:3]
>>> [1,2,3]

#Middle 4
print x[1:5]
>>> [2,3,4,5]

#Last 3
print x[-3:]
>>> [4,5,6]

#Odd numbers
print x[::2]
>>> [1,3,5]

#Even numbers
print x[1::2]
>>> [2,4,6]

60个字符搞定FizzBuzz问题

FizzBuzz问题:写一个程序打印1到100的数字。遇到3的倍数打印“Fizz”来替换这个数。5的倍数打印“Buzz“,对于既是3的倍数又是5的倍数的数字打印“FizzBuzz”代替这个数字

for x in range(1,101):print"Fizz"[x%3*4:]+"Buzz"[x%5*4:]or x

这里就是List的一个知识点了。如果方括号里,冒号左边的数字式大于字符串长度的,那么什么都不会输出!也就是在非3或者5的倍数的时候什么都不会输出。

集合

在collections模块下的Counter,有时候也是很有用的。

from collections import Counter

print Counter("hello")
>>> Counter({‘l‘: 2, ‘h‘: 1, ‘e‘: 1, ‘o‘: 1})

Itertools

from itertools import combinations

teams = ["Packers", "49ers", "Ravens", "Patriots"]
for game in combinations(teams, 2):
    print game

>>> (‘Packers‘, ‘49ers‘)
>>> (‘Packers‘, ‘Ravens‘)
>>> (‘Packers‘, ‘Patriots‘)
>>> (‘49ers‘, ‘Ravens‘)
>>> (‘49ers‘, ‘Patriots‘)
>>> (‘Ravens‘, ‘Patriots‘)

False == True

在python里,True和False只不过是全局变量,所以:

False = True
if False:
    print "Hello"
else:
    print "World"

>>> Hello

如果你发现什么有趣的东西欢迎在下面补齐!

from:http://www.maxburstein.com/blog/python-shortcuts-for-the-python-beginner/

时间: 2024-10-07 02:20:02

Python初学者的捷径的相关文章

Python初学者的捷径[译]

下面列出的都是这些年总结的Python的有用的知识点和一些工具.希望对你有所帮助! 交换变量值 x = 6 y = 5 x, y = y, x print x >>> 5 print y >>> 6 内联if语句 print "Hello" if True else "World" >>> Hello 联接 nfc = ["Packers", "49ers"] afc =

Python初学者的17个技巧

交换变量 x = 6 y = 5 x, y = y, x print x >>> 5 print y >>> 6 if 语句在行内 print "Hello" if True else "World" >>> Hello 连接 下面的最后一种方式在绑定两个不同类型的对象时显得很酷. nfc = ["Packers", "49ers"] afc = ["Ravens

Python 初学者的最佳学习资源

本文由 伯乐在线 - caimaoy 翻译,唐尤华 校稿.未经许可,禁止转载!英文出处:Matt Makai.欢迎加入翻译组. Python 社区在分享学习资源和帮助初学者掌握语言方面总是很积极的.但也就是因为资源过多,导致人们很难知道如何找到. 本文整理了最好.最通用的 Python 资源,并且简述了其内容.[伯乐在线注:译文中添加了一些中文Python学习资源] 致编程新手 如果你是第一次学习编程,本节推荐的书是比较适合你的.如果在学习Python之前你已经学习过其他的编程语言,请跳过此节直

Python初学者的29个知识难点汇总,推荐新手收藏!

初学Python的人总会遇到这样或者那样的问题,Python小编总结了Python初学者的常见的29个知识难点,具体如下: 1 在cmd下 盘与盘之间的切换 直接 D或d: 就好 2 查找当前盘或者文件下面的目录 直接 dir 3 想在一个盘下进去一个文件夹,用cd空格目标文件 cd p 4 写文件的第一个字母后 按tab键自动补全 如果有多个p开头的则在按tab 会在所有之间切换 5 d:切盘 dir 查找目录 cd 进去目标文件(相当于双击) 6 往上走一层 cd .. 走两层 cd ../

python 初学者

明确学习目标,不急于求成 当下是一个喧嚣.浮躁的时代.我们总是被生活中大量涌现的热点所吸引,几乎没有深度阅读和思考的时间和机会.我始终认为,学习是需要沉下心来慢慢钻研的,是长 期的:同时,学习不应该被赋予太多的功利色彩.一个Python 程序员的成长路线图应该是这样子的:基础语法–>语感训练–>课题练习–>分方向继续学习–>中级程序员–> 拓展深度和广度–>高级程序员. 然而,很多新手的学习路线图却是这样子的:学完基础语法之后,不了解 http 协议和 Ajax 异步请

写给已有编程经验的 Python 初学者的总结

当我开始学习Python的时候,有些事我希望我一早就知道.我花费了很多时间才学会这些东西.我想要把这些重点都编纂到一篇文章当中.这篇文章的目标读者,是刚刚开始学习Python语言的有经验的程序员,想要跳过前几个月研究Python使用的那些他们已经在用的类似工具.包管理和标准工具这两节对于初学者来说同样很有帮助. 我的经验主要基于Python 2.7,但是大多数的工具对任何版本都有效. 如果你从来没有使用过Python,我强烈建议你阅读Python introduction,因为你需要知道基本的语

python初学者笔记——命名空间

对于初学者而言,闭包的概念一直都是很难理解的. 我在学习的时候,网上查了那么多资料,依然是一知半解. 直到后来我看了这篇文章:http://simeonfranklin.com/blog/2012/jul/1/python-decorators-in-12-steps/ 这是一篇很好的文章,由浅入深的告诉你到底闭包,装饰器都是什么东西. E文不过关?没关系,我来用我自己的理解和你们聊聊命名空间.闭包和装饰器的那些事儿. 前提: 阅读这篇文章的前提,是你要对Python,有基础的理解,如果你有兴趣

致Python初学者:Anaconda入门使用指南

原文出处: 鱼心fishstar 打算学习 Python 来做数据分析的你,是不是在开始时就遇到各种麻烦呢? 到底该装 Python2 呢还是 Python3 ? 为什么安装 Python 时总是出错? 怎么安装工具包呢? 为什么提示说在安装这个工具前必须先安装一堆其他不明所以的工具? 相信大多数 Python 的初学者们都曾为环境问题而头疼不已,但你并不孤独,大家都是这么折腾过来的.为了在入门时少走弯路,并且让高涨的积极性不至于太受打击,这里推荐使用 Anaconda 来管理你的安装环境和各种

Python初学者应该选择哪个版本

目前,根据数据显示,使用Python2.xd 开发者站63.7%,而使用Python3.x的用户站36.3%,由此可见使用使用Python2.x的用户还是占多数.2014年,Python的创始人宣布将Python2.7支持时间延长到2020年,那么初学者应该选择什么版本呢?目前建议初学者选择Python3.x版本1.目前,使用Python3.x是大势所趋2.Python3.x在Python2.x的基础上做了功能升级3.Python3.x和Python2.x思想基本是共通的当然选择Python3.