python输出计算结果_Python学习--02输⼊和输出、运算符命令⾏输⼊
x = input("Please input x:")
y = raw_input("Please input x:")
使⽤input和raw_input都可以读取控制台的输⼊,但是input和raw_input在处理数字时是有区别的。raw_input() 将所有输⼊作为字符串看待,返回字符串类型;⽽ input() 在对待纯数字输⼊时具有⾃⼰的特性,它返回所输⼊的数字的类型(int, float),input() 可接受合法的 python 表达式。
看python input的⽂档,可以看到input() 本质上还是使⽤ raw_input() 来实现的,只是调⽤完 raw_input() 之后再调⽤ eval() 函数,所以,你甚⾄可以将表达式作为 input() 的参数,并且它会计算表达式的值并返回它。
def input(prompt):
return (eval(raw_input(prompt)))
除⾮对 input() 有特别需要,否则⼀般情况下我们都是推荐使⽤ raw_input() 来与⽤户交互。
输出
Python两种输出值的⽅式: 表达式语句和 print() 函数。(第三种⽅式是使⽤⽂件对象的 write() ⽅法; 标准输出⽂件可以⽤ sys.stdout 引⽤。)
print
⽰例:
print "Hello, Python!";
print ("Hello, Python!"); #新版本的Python
输出的 print 函数总结:
字符串和数值类型
可以直接输出:
>>> 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填充。⽰例:
# 指定占位符宽度(左对齐)
>>> print ("Name:%-10s Age:%-8d Height:%-8.2f"%("Aviad",25,1.83))
Name:Aviad Age:25 Height:1.83
# 指定占位符(若位数不够则⽤0填充)
>>> print ("Name:%-10s Age:%08d Height:%08.2f"%("Aviad",25,1.83))
Name:Aviad Age:00000025 Height:00001.83
(3) 最⼩字段宽度:转换后的字符串⾄少应该具有该值指定的宽度。如果是*,则宽度会从值元组中读出。
# 指定占位符宽度
>>> print ("Name:%10s Age:%8d Height:%8.2f"%("Aviad",25,1.83))
Name: Aviad Age: 25 Height: 1.83
(4) 点(.)后跟精度值:如果转换的是实数,精度值就表⽰出现在⼩数点后的位数。如果转换的是字符串,那么该数字就表⽰最⼤字段宽度。如果是*,则从后⾯的元组中读取字段宽度或精度。
>>> print ("His height is %f m"%(1.83))
His height is 1.830000 m
>>> print ("His height is %.2f m"%(1.83))
His height is 1.83 m
>>> print ("The String is %.2s"%("abcd"))
The String is ab
# ⽤*从后⾯的元组中读取字段宽度或精度,第1个参数是精度>>> print ("His height is %.*f m"%(2,1.83))
His height is 1.83 m
(5) 字符串格式化转换类型
转换类型 含义
d,i 带符号的⼗进制整数
o 不带符号的⼋进制
u 不带符号的⼗进制
x 不带符号的⼗六进制(⼩写)
X 不带符号的⼗六进制(⼤写)
write的返回值e 科学计数法表⽰的浮点数(⼩写)
E 科学计数法表⽰的浮点数(⼤写)
f,F ⼗进制浮点数
g 如果指数⼤于-4或者⼩于精度值则和e相同,其他情况和f相同G 如果指数⼤于-4或者⼩于精度值则和E相同,其他情况和F相同C 单字符(接受整数或者单字符字符串)
r 字符串(使⽤repr转换任意python对象)
s 字符串(使⽤str转换任意python对象)
拼接字符串
a = 'hello '
b = 'world'
>>> a+b
'hello world'
查看变量类型
>>> type(a)
部分函数
math开头需要import math。
str(object) 把值转换为字符串
repr(object) 返回值的字符串标⽰形式
abs(number) 返回数字的绝对值
cmath.sqrt(number) 返回平⽅根,也可以应⽤于负数
float(object) 把字符串和数字转换为浮点数
help() 提供交互式帮助
input(prompt) 获取⽤户输⼊
int(object) 把字符串和数字转换为整数
math.floor(number) 返回数的下舍整数,返回值的类型为浮点数
math.sqrt(number) 返回平⽅根不适⽤于负数
pow(x,y[.z]) 返回X的y次幂(有z则对z取模)
round(number[.ndigits]) 根据给定的精度对数字进⾏四舍五⼊
str.format() 的基本使⽤如下:
>>> print('We are the {} who say "{}!"'.format('knights', 'Ni'))
We are the knights who say "Ni!"
括号及其⾥⾯的字符 (称作格式化字段) 将会被 format() 中的参数替换。
⾃定义打印对象函数:
def prn_obj(obj):
print ', '.join(['%s:%s' % item for item in obj.__dict__.items()])
JSON转换
json类⾥提供
json.dumps(param) #list转json
json.loads(param) #json转list
⽰例:
>>> import json
>>> json.dumps(['math','english'])
'["math", "english"]'
>>> json.loads('["math", "english"]')
[u'math', u'english']
json主要⽤在PHP的array对象 和 python的list对象上。
PHP和Python3能将同样的json还原成 各⾃的object 且 在各⾃的语⾔环境下代表的意义是同样的。但是 PHP和python将object⽣成json的时候,却不太⼀样了,PHP⽣成的json中多了反斜线。
打开⽂件
#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 打开⽂件
fo = open("", "r+")
print "⽂件名为: ", fo.name
line = fo.read(10)
print "读取的字符串: %s" % (line)
# 关闭⽂件
fo.close()
运算符
Python⽀持:
算数运算符
关系运算符
赋值运算符
逻辑运算符
位运算符
除了以上的⼀些运算符之外,Python还⽀持成员运算符,⾝份运算符:成员运算符
⾝份运算符
算术运算符
以下假设变量a为10,变量b为20:
运算符
描述
实例
+
加 - 两个对象相加
a +
b 输出结果 30
-
减 - 得到负数或是⼀个数减去另⼀个数
a -
b 输出结果 -10
*
乘 - 两个数相乘或是返回⼀个被重复若⼲次的字符串
a *
b 输出结果 200
/
除 - x除以y
b / a 输出结果 2
%
取模 - 返回除法的余数
b % a 输出结果 0
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论