在类Unix系统上开始Python3编程入门


Posted in Python onAugust 20, 2015

假设有个python脚本script.py,不管哪种Unix平台,都可以在命令行上通过解释器执行:

$ python script.py

Unix平台还可以在不明确指定python解释器的情况下,自动执行python解释器,这需要在python脚本的第一行添加如下shell魔术字符串:

#!/usr/bin/python

在#!之后写上python解释器的完整路径,通常在/usr/bin或/usr/local/bin目录下。还有一种方法是使用env这个命令,位于/bin或/usr/bin中,它会帮你在系统搜索路径中找到python解释器,python脚本的第一行就可以修改如下:

#!/usr/bin/env python

这样,执行python脚本时,就不必显式地调用python解释器了,只需要键入脚本的文件名即可:

$ script.py

在 Python 3 中接触的第一个很大的差异就是缩进是作为语法的一部分,这和C++等其他语言确实很不一样,所以要小心咯
缩进要使用4个空格(这不是必须的,但你最好这么做),缩进表示一个代码块的开始,非缩进表示一个代码的结束。没有明确的大括号、中括号、或者关键字。这意味着空白很重要,而且必须要是一致的。第一个没有缩进的行标记了代码块,意思是指函数,if 语句、 for 循环、 while 循环等等的结束。
不过这样的规定也使得 Python 程序写出来会更加美观,便于阅读,吐槽是没有用的,接受吧...o(?□?)o
Python 思想:
“一切都是对象!”
输入很简单

x = input("Please input x:") 
Please input x:

在代码最后加上

input("Press Enter")

就可以让程序运行完后停一下

输出的 print 函数总结:
1. 字符串和数值类型
可以直接输出

>>> print(1) 
1 
>>> print("Hello World") 
Hello World

 

2.变量
无论什么类型,数值,布尔,列表,字典...都可以直接输出

>>> x = 12 
>>> print(x) 
12 
>>> s = 'Hello' 
>>> print(s) 
Hello 
>>> L = [1,2,'a'] 
>>> print(L) 
[1, 2, 'a'] 
>>> t = (1,2,'a') 
>>> print(t) 
(1, 2, 'a') 
>>> d = {'a':1, 'b':2} 
>>> print(d) 
{'a': 1, 'b': 2}

3.格式化输出
类似于C中的 printf

>>> s 
'Hello' 
>>> x = len(s) 
>>> print("The length of %s is %d" % (s,x)) 
The length of Hello is 5

看看《Python基础编程》中对格式化输出的总结:
(1). %字符:标记转换说明符的开始

(2). 转换标志:-表示左对齐;+表示在转换值之前要加上正负号;“”(空白字符)表示正数之前保留空格;0表示转换值若位数不够则用0填充

(3). 最小字段宽度:转换后的字符串至少应该具有该值指定的宽度。如果是*,则宽度会从值元组中读出。

(4). 点(.)后跟精度值:如果转换的是实数,精度值就表示出现在小数点后的位数。如果转换的是字符串,那么该数字就表示最大字段宽度。如果是*,那么精度将从元组中读出

(5).字符串格式化转换类型

转换类型          含义
d,i                 带符号的十进制整数
o                   不带符号的八进制
u                   不带符号的十进制
x                    不带符号的十六进制(小写)
X                   不带符号的十六进制(大写)
e                   科学计数法表示的浮点数(小写)
E                   科学计数法表示的浮点数(大写)
f,F                 十进制浮点数
g                   如果指数大于-4或者小于精度值则和e相同,其他情况和f相同
G                  如果指数大于-4或者小于精度值则和E相同,其他情况和F相同
C                  单字符(接受整数或者单字符字符串)
r                    字符串(使用repr转换任意python对象)
s                   字符串(使用str转换任意python对象)

>>> pi = 3.141592653 
>>> print('%10.3f' % pi) #字段宽10,精度3 
  3.142 
>>> print("pi = %.*f" % (3,pi)) #用*从后面的元组中读取字段宽度或精度 
pi = 3.142 
>>> print('%010.3f' % pi) #用0填充空白 
000003.142 
>>> print('%-10.3f' % pi) #左对齐 
3.142  
>>> print('%+f' % pi) #显示正负号 
+3.141593

4.如何让 print 不换行
在Python中总是默认换行的

>>> for x in range(0,10): 
 print(x) 



0 
1 
2 
3 
4 
5 
6 
7 
8 
9
如果想要不换行,之前的 2.x 版本可以这样 print x, 在末尾加上 ,
但在 3.x 中这样不起任何作用
要想换行你应该写成 print(x,end = '' )
>>> for x in range(0,10): 
 print (x,end = '') 



0123456789

拼接字符串:
>>> "Hello""World" 
'HelloWorld' 
>>> x = "Hello" 
>>> y = "world" 
>>> xy 
Traceback (most recent call last): 
 File "<pyshell#10>", line 1, in <module> 
 xy 
NameError: name 'xy' is not defined 
>>> x+y 
'Helloworld'
Python 相关文章推荐
Python对象的深拷贝和浅拷贝详解
Aug 25 Python
在Python上基于Markov链生成伪随机文本的教程
Apr 17 Python
对Python 内建函数和保留字详解
Oct 15 Python
Python3非对称加密算法RSA实例详解
Dec 06 Python
python 通过类中一个方法获取另一个方法变量的实例
Jan 22 Python
Python3.5集合及其常见运算实例详解
May 01 Python
PyQT5 QTableView显示绑定数据的实例详解
Jun 25 Python
django认证系统 Authentication使用详解
Jul 22 Python
解决pycharm 安装numpy失败的问题
Dec 05 Python
Pandas时间序列重采样(resample)方法中closed、label的作用详解
Dec 10 Python
浅谈keras中loss与val_loss的关系
Jun 22 Python
Python 如何将integer转化为罗马数(3999以内)
Jun 05 Python
Python中字典映射类型的学习教程
Aug 20 #Python
Python3字符串学习教程
Aug 20 #Python
Python中列表和元组的相关语句和方法讲解
Aug 20 #Python
编写Python脚本抓取网络小说来制作自己的阅读器
Aug 20 #Python
使用Python求解最大公约数的实现方法
Aug 20 #Python
使用Python3编写抓取网页和只抓网页图片的脚本
Aug 20 #Python
详解Python3中yield生成器的用法
Aug 20 #Python
You might like
PHP远程连接MYSQL数据库非常慢的解决方法
2008/07/05 PHP
php将会员数据导入到ucenter的代码
2010/07/18 PHP
PHP严重致命错误处理:php Fatal error: Cannot redeclare class or function
2017/02/05 PHP
Zend Framework基于Command命令行建立ZF项目的方法
2017/02/18 PHP
搭建自己的PHP MVC框架详解
2017/08/16 PHP
解决IE6的PNG透明JS插件使用介绍
2013/04/17 Javascript
图片上传判断及预览脚本的效果实例
2013/08/07 Javascript
异步动态加载JS并运行(示例代码)
2013/12/13 Javascript
JQuery以JSON方式提交数据到服务端示例代码
2014/05/05 Javascript
容易造成JavaScript内存泄露几个方面
2014/09/04 Javascript
jQuery Dialog 取消右上角删除按钮事件
2016/09/07 Javascript
jQuery实现的放大镜效果示例
2016/09/13 Javascript
Vue 仿百度搜索功能实现代码
2017/02/16 Javascript
对存在JavaScript隐式类型转换的四种情况的总结(必看篇)
2017/08/31 Javascript
JS实现HTML页面中动态显示当前时间完整示例
2018/07/30 Javascript
微信小程序公用参数与公用方法用法示例
2019/01/09 Javascript
vue学习笔记之过滤器的基本使用方法实例分析
2020/02/01 Javascript
vue flex 布局实现div均分自动换行的示例代码
2020/08/05 Javascript
JavaScript代码简化技巧实例解析
2020/09/09 Javascript
[49:42]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第一局
2016/03/04 DOTA
Python中optparser库用法实例详解
2018/01/26 Python
对Python中DataFrame按照行遍历的方法
2018/04/08 Python
Python 查找list中的某个元素的所有的下标方法
2018/06/27 Python
pyinstaller参数介绍以及总结详解
2019/07/12 Python
详解python中的模块及包导入
2019/08/30 Python
贝玲妃美国官方网站:Benefit美国
2016/08/28 全球购物
jurlique茱莉蔻英国官网:澳洲天然护肤品
2018/08/03 全球购物
酒吧员工的岗位职责
2013/11/26 职场文书
申报职称专业技术个人的自我评价
2013/12/12 职场文书
工程造价专业大学生职业规划范文
2014/03/09 职场文书
高三学习决心书
2014/03/11 职场文书
中班下学期个人工作总结
2015/02/12 职场文书
出纳岗位职责范本
2015/03/31 职场文书
python爬取企查查企业信息之selenium自动模拟登录企查查
2021/04/08 Python
自制短波长线天线频率预选器 - 成功消除B2K之流的镜像
2021/04/22 无线电
Elasticsearch Recovery 详细介绍
2022/04/19 Java/Android