在类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中if语句的嵌套用法
May 14 Python
django通过ajax发起请求返回JSON格式数据的方法
Jun 04 Python
python数据结构之链表详解
Sep 12 Python
django自带的server 让外网主机访问方法
May 14 Python
Python 删除整个文本中的空格,并实现按行显示
Jul 24 Python
python将list转为matrix的方法
Dec 12 Python
python按照多个条件排序的方法
Feb 08 Python
Python实现12306火车票抢票系统
Jul 04 Python
对python中的float除法和整除法的实例详解
Jul 20 Python
python爬虫 基于requests模块的get请求实现详解
Aug 20 Python
Pytorch使用PIL和Numpy将单张图片转为Pytorch张量方式
May 25 Python
python pip如何手动安装二进制包
Sep 30 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
str_replace只替换一次字符串的方法
2013/04/09 PHP
php简单的留言板与回复功能具体实现
2014/02/19 PHP
PHP数字和字符串ID互转函数(类似优酷ID)
2014/06/30 PHP
php实现的网络相册图片防盗链完美破解方法
2015/07/01 PHP
ThinkPHP安装和设置
2015/07/27 PHP
yii2 commands模式以及配置crontab定时任务的方法
2017/08/19 PHP
javascript 浏览器判断 绑定事件 arguments 转换数组 数组遍历
2009/07/06 Javascript
用示例说明filter()与find()的用法以及children()与find()的区别分析
2013/04/26 Javascript
jquery 实现窗口的最大化不论什么情况
2013/09/03 Javascript
常见的原始JS选择器使用方法总结
2014/04/09 Javascript
JavaScript实现获取某个元素相邻兄弟节点的prev与next方法
2016/01/25 Javascript
vue.js动态数据绑定学习笔记
2017/05/19 Javascript
vue深入解析之render function code详解
2017/07/18 Javascript
ES6新特性:使用export和import实现模块化详解
2017/07/31 Javascript
深入浅析Vue不同场景下组件间的数据交流
2017/08/15 Javascript
Vue 后台管理类项目兼容IE9+的方法示例
2019/02/20 Javascript
使用webpack4编译并压缩ES6代码的方法示例
2019/04/24 Javascript
python基于右递归解决八皇后问题的方法
2015/05/25 Python
在Python的Django框架中为代码添加注释的方法
2015/07/16 Python
Python for Informatics 第11章之正则表达式(四)
2016/04/21 Python
python画出三角形外接圆和内切圆的方法
2018/01/25 Python
python使用Matplotlib画饼图
2018/09/25 Python
opencv python 图片读取与显示图片窗口未响应问题的解决
2020/04/24 Python
python函数中将变量名转换成字符串实例
2020/05/11 Python
使用keras实现BiLSTM+CNN+CRF文字标记NER
2020/06/29 Python
Python内置函数property()如何使用
2020/09/01 Python
廉价连衣裙和婚纱礼服在线销售:Tbdress
2019/02/28 全球购物
精选鞋类、服装和配饰的全球领先目的地:Bodega
2021/02/27 全球购物
沃尔玛旗下墨西哥超市:Bodega Aurrera
2020/11/13 全球购物
各营销点岗位职责范本
2014/03/05 职场文书
就业协议书怎么填
2014/04/11 职场文书
食品安全责任书
2014/04/15 职场文书
小学师德师风演讲稿
2014/09/02 职场文书
2015年万圣节活动总结
2015/03/24 职场文书
祝酒词范文
2015/08/12 职场文书
vue elementUI批量上传文件
2022/04/26 Vue.js