Python 基础
约 525 个字 预计阅读时间 2 分钟
基础语法
Python 的语法比较简单,以至于被称作“可以运行的伪代码”,基础知识去菜鸟教程上看看就差不多了,实战中Python有大量且好用的第三方库,大约目前有六万多个,常用的当然没有这么多。使用Python一段时间之后,便可以根据已有知识,尝试正确地猜出新功能的作用。
输入输出
2种键盘输入的方式:
- 运行时从键盘输入,最常用
map(int,input().split()) - 运行时数据跟在程序名称后面(命令行参数),形如
python.exe test.py 1 2
可以用eval对输入进行处理,这样可以一次性处理不同类型,因为eval可以执行任何代码(字符串格式),但是这么做的风险其实很大,终归是任意代码执行(
格式化字符串
Python输出格式控制:可以用sep指定分隔符,end指定换行符
- 旧式格式化,类似于C:
print("%d %f" %(10,20.0)) - 格式化字符串:
print('{:*<10.2f} + {} = {}'.format(x, y, x + y)) {}是可以嵌套的,比如print('{:{}d}'.format(10,5)),应该是由外向内解析- f-string(
3.6+新语法):print(f'Name: {name:*^10}, Age: {age:.2f}') - 可以使用
r''表示原始字符串,用于替换转义字符,即raw
Python的风格
Note
首先就可以问个问题,为什么len不是方法
点击展开,回答仅供参考
首先要意识到 len 不是方法,理由是平时都是 len(x) ,而不是 x.len() 。
至于为什么,大概是因为它很常用,所以经过了特殊处理,已经可以算是Python内置的运算符了。
Python可以被视为一个框架,解释器会调用特殊的方法(即魔术方法)来执行基本对象操作,特殊方法两端都有下划线__,也被称作魔术方法(magic method),这些方法是无法自己实现的,因为它们是给解释器用的,绝大部分时候特殊方法都是隐式调用的,比如for i in x:其实会调用iter(x),接着调用x.__getitem__,唯一的例外是__init__方法,它是用于类的初始化。特殊的方法可以用于类的实现,避免反复造轮子,并且标准库的实现显然比你的实现更高效,所以要优先选择标准库。