day01-Python输出
2018-10-19 06:17:55来源:博客园 阅读 ()
输出
用print加上字符串,就可以向屏幕上输出指定的文字。比如输出'hello, world'
>>>print 'hello, world'
print语句也可以跟上多个字符串,用逗号“,”隔开,就可以连成一串输出:
>>>print('hello world','hello python')
hello world hello python
print也可以打印整数,或者计算结果:
>>> print 300
300
>>> print 100 + 200
300
我们可以把计算100 + 200的结果打印得更漂亮一点:
>>> print '100 + 200 =', 100 + 200
100 + 200 = 300
在写代码过程中,经常遇到一行代码很长的情况。为了让代码显得整齐干净,就需要把一行代码分成多行来写,Python中有两种小技巧可以实现该功能:
1.用反斜杠链接多行代码,示例输出:55
a = 22 + \
33
print a
2.用小括号括起来,示例输出:55
a = (22+
33)
print a
提示:针对较长字符串分成多行书写的还有一种简单的方法:用三个单引号,但是该方法只针对字符串有用。下面代码输出:
a = '''32 +
45'''
print a
如果想要分几行输入字符串,并且希望行尾的换行符自动包含到字符串当中,可以使用三对引号:"""...""" 或 '''...''' 。
print('''
文能提笔安天下,
武能上马定乾坤.
心存谋略何人胜,
古今英雄唯是君.
''')
格式化输出
age = 10
print ('我的年龄是%d岁'%age)
name = 'Tom'
age = 10
print ('%s的年龄是%d岁'%(name,age))
>>> mathScore=100
>>> print('my math score is %d'%mathScore)
my math score is 100
>>>
在引号内用%d,引号外用%变量名来输出
>>> mathScore=100
>>> englishScore=99
>>> print('my math score is %d,my englist score is %d'%(mathScore,englishScore))
my math score is 100,my englist score is 99
如果有多个变量需要调用,在引号内用多个%d,在引号外用%(变量名1,变量名2)来输出
格式化符号
说明
%c 转换成字符(ASCII 码值,或者长度为一的字符串)
%r 优先用repr()函数进行字符串转换
%s 优先用str()函数进行字符串转换
%d/%i 转成有符号十进制数
%u 转成无符号十进制数
%o 转成无符号八进制数
%x/%X 转成无符号十六进制数(x / X 代表转换后的十六进制字符的大小写)
%e/%E 转成科学计数法(e / E控制输出e / E)
%f/%F 转成浮点数(小数部分自然截断)
%g/%G %e和%f/%E和%F 的简写
%% 输出%(格式化字符串里面包括百分号,那么必须使用%%)
还有一种{}.format格式
import math
r = 2
s = math.pi*r*r
print('%.10f'%s)
print('{:.10f}'.format(s))
Python提供了一个raw_input,可以让用户输入字符串,并存放到一个变量里。
在Python2中如果使用input(),则用户输入的内容必须是表达式,并会进行计算,所以Python2中建议用raw_input(),如果输出的是字符,在python2中必须使用raw_input()
在Python3中只有input()一种输入方法,且用户输入的内容不会参与计算,全部认为是字符串
例子:
>>> a = input('提示:')
提示:100+200
>>> a
300
>>> a = raw_input('提示:')
提示:100+200
>>> a
'100+200'
>>>
例子:打印名片
使用多行输出,利用占位符打印
name=input('请输入姓名:')
qq=input('QQ:')
tel=input('手机号:')
msg = '''
===================
姓名:%s
QQ:%s
手机号:%s
地址:北京市xxx
===================
'''%(name,qq,tel)
print(msg)
#!/usr/bin/python //指定python命令的路径
print('hello world')
赋予执行权限
chmod u+x hello.py
执行程序
./hello.py
也可以python hello.py,这种方法在代码内不需要指定python命令的位置#!/usr/bin/python
也不需要赋予执行权限
注释
用#开头的内容是单行注释
用'''
注释内容
注释内容
注释内容
'''
是多行注释
编码
在Python2中默认编码是ascii
C:\Users\i>python2
Python 2.7.15 (v2.7.15:ca079a3ea3, Apr 30 2018, 16:30:26) [MSC v.1500 64 bit (AM
D64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.getdefaultencoding()
'ascii'
在Python3中默认编码是utf-8
C:\Users\i>python
Python 3.6.3 |Anaconda, Inc.| (default, Oct 15 2017, 03:27:45) [MSC v.1900 64 bi
t (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.getdefaultencoding()
'utf-8'
python2是1989年创立的,而utf-8是1991年才有的,所以python2在设计的时候并没有utf-8支持
windows默认编码是gbk,默认可以支持unicode和gbk,Linux默认编码是utf-8
Python2 在windows上解码是必须的,编码成gbk这个动作不是必须的,因为window在内存里默认就是unicode,在Linux上如果源码不是utf-8则需要解码成utf-8,编码也不是必须的
Python3 默认编码是utf-8,解释器编码是utf-8,文件加载到内存后会自动解码成unicode,同时把字符转换成bytes格式。
Python3 中不需要解码和编码
#-*- coding:utf-8 -*-
msg = "你好"
print (msg)
#C:\Users\i\Desktop>python2 test1.py
#浣犲ソ 因为dos解释器默认使用gbk编码,所以不能识别utf-8
#将utf-8编码转码为gbk编码
gbk_str = msg.decode(encoding="utf-8").encode(encoding="gbk")
#或
gbk_str = msg.decode(encoding="utf-8").encode("gbk")
print (gbk_str)
通过dos窗口执行结果如下:
#C:\Users\i\Desktop>python2 test1.py
#你好 将utf-8编码转换为gbk后就可以正常显示了
print (gbk_str.decode(encoding="gbk").encode("gb2312"))
#将gbk_str的gbk模式再转换为gb2312可以正常显示你好,因为gbk向下兼容gb2312
print (gbk_str.decode(encoding="gbk").encode("utf-8"))
#浣犲ソ 将gbk_str的编码再转换为utf-8后在dos窗口下就不能正常显示了
print (gbk_str.decode(encoding="gbk"))
#你好 直接将gbk_str解码,默认转换成了unicode编码,在dos窗口下也可以正常显示
msg = '你好'
print(msg.encode('gbk'))
#在python3中将msg编码成gbk编码并保存为bytes模式,便于其他解释器在解码时使用gbk编码格式进行解码
C:\Users\i\Desktop>python3 test1.py
b'\xc4\xe3\xba\xc3'
只有在需要保存文件时才需要将编码
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- python输出九九乘法表 2019-07-24
- Python输出菱形 2019-07-24
- 封装查找元素以及集成日志输出,Base模块 2019-07-24
- python的输入和输出 2019-07-24
- python格式化输出 2019-07-24
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash