python 字符串,数学之间的不可描述的关系
首先说一下输入:
>>> a=raw_input(" ")
1.234
>>> a
'1.234'
>>>
可以看到使用raw_input()输入的数字(整形或则浮点型都被当成了字符串)
##Python input和raw_input的区别
使用input和raw_input都可以读取控制台的输入,但是input和raw_input在处理数字时是有区别的
纯数字输入
当输入为纯数字时
input返回的是数值类型,如int,float
raw_inpout返回的是字符串类型,string类型
输入字符串为表达式
input会计算在字符串中的数字表达式,而raw_input不会。
如输入 “57 + 3”:
input会得到整数60
raw_input会得到字符串”57 + 3”
python input的实现
看python input的文档,可以看到input其实是通过raw_input来实现的,原理很简单,就下面一行代码:
def input(prompt):
return (eval(raw_input(prompt)))
Python raw_input 读取输入值
下面介绍了python raw_input的用法,
使用raw_input 能够很方便的丛控制台读入数据。
1.输入字符串
#13222319810101****
nID = ''
while 1:
nID = raw_input("Input your id plz")
if len(nID) != len("13222319810101****"):
print 'wring length of id,input again'
else:
break
print 'your id is %s' % (nID)
2.输入整数
nAge = int(raw_input("input your age plz:\n"))
if nAge > 0 and nAge < 120:
print 'thanks!'
else:
print 'bad age'
print 'your age is %d\n' % nAge
3.输入浮点型
fWeight = 0.0
fWeight = float(raw_input("input your weight\n"))
print 'your weight is %f' % fWeight
4.输入16进制数据
nHex = int(raw_input('input hex value(like 0x20):\n'),16)
print 'nHex = %x,nOct = %d\n' %(nHex,nHex)
5.输入8进制数据
nOct = int(raw_input('input oct value(like 020):\n'),8)
print 'nOct = %o,nDec = %d\n' % (nOct,nOct)
那么,怎么转化成你想要的类型呢?
例如: a="123.456"
如果你想把它转化成浮点型可以使用以下几种方法:
1.可以直接使用float(a)转化
>>> a="123.456"
>>> float(a)
123.456
>>>
2.可以使用string模块转化
import string
>>> a="123.456"
>>> string.atof(a)
123.456
又如: a="555"
如果想转化成整形:
1.直接使用int(a)
>>> a="555"
>>> int(a)
555
>>>
2.使用string模块
>>> import string
>>> a="555"
>>> string.atoi(a)
555
>>>
###那么如果如何把数字转化成字符串呢?
列: a=123
1.使用控制格式的方法
>>> a=123
>>> a= '%d' %a
>>> a
'123'
a就转化成字符串了
2.使用str(a)
>>> a=123
>>> str(a)
'123'
###字母与ASCII码的转换
1.ASCII码转换为相应字符
>>> chr(97)
'a'
2.字符转换为相应ASCII码
>>> ord('a')
97
再说一下python数字的各种格式控制
###首先认识几个函数
round(number[, ndigits])
round 对传入的数据进行四舍五入,如果ngigits不传,默认是0(就是说保留整数部分).ngigits<0 的时候是来对整数部分进行四舍五入,返回的结果是浮点数.
###1.如何实现数字的四舍五入呢?
例如: a=123.456
>>> round(a,3)
123.456
>>> round(a,2)
123.46
>>> round(a,1)
123.5
>>> round(a)
123.0
**注意: 只有在整数部分是奇数的时候, 小数部分才逢5进1; 偶数时逢5舍去
>>> a=2.55
>>> round(a,1)
2.5
python 字符串,数学之间的不可描述的关系的更多相关文章
- python——字符串 & 正则表达
raw字符串(原始字符串) 所见即所得,例如r''My's\n'' Python转义字符 在需要在字符中使用特殊字符时,python用反斜杠(\)转义字符.如下表: 转义字符 描述 \(在行尾时) 续 ...
- Python 字符串和数字
Python 变量类型 变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的数据 ...
- 【转】Python字符串格式化
Python 支持格式化字符串的输出 .尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中. 在 Python 中,字符串格式化使用与 C 中 sp ...
- Python - 字符串 - 第七天
Python 字符串 字符串是 Python 中最常用的数据类型.我们可以使用引号( ' 或 " )来创建字符串. 创建字符串很简单,只要为变量分配一个值即可.例如: var1 = 'Hel ...
- Python 字符串_python 字符串截取_python 字符串替换_python 字符串连接
Python 字符串_python 字符串截取_python 字符串替换_python 字符串连接 字符串是Python中最常用的数据类型.我们可以使用引号('或")来创建字符串. 创建字符 ...
- python字符串str
字符串str常用操作方法(都会产生新的数据) 1.取值: (1)索引:s[0] (2)切片:s[起始索引:结束索引:步长] 起始索引为0,可以省略 s最后一个索引可以取-1 结束索引省略,默认取到最后 ...
- python字符串/列表/元组/字典之间的相互转换(5)
一.字符串str与列表list 1.字符串转列表 字符串转为列表list,可以使用str.split()方法,split方法是在字符串中对指定字符进行切片,并返回一个列表,示例代码如下: # !usr ...
- python 在Unicode和普通字符串 str 之间转换
unicodestring = u"Hello world" # 将Unicode转化为普通Python字符串:"encode" utf8string = un ...
- python笔记-数学、元组、日期、文件
python在很多地方和C++相似,比如都会有关系.逻辑等运算符,但也有不同的地方,比如:#Python Number 类型转换int(x [,base ]) 将x转换为一个整数 long(x [,b ...
随机推荐
- Idea Ant 打开发包
简介: http://ju.outofmemory.cn/entry/19239 语法: https://wenku.baidu.com/view/a0e00315866fb84ae45c8d9d.h ...
- 代理设计模式iOS开发Demo(示例程序)源代码
iOS程序源代码下载链接:03-代理设计模式.zip28.3 KB // main.m // // main.m // 03-代理设计模式 // // Created by apple ...
- centos 挂载数据盘
第一.检查硬盘设备是否有数据盘 fdisk -l 第二.数据硬盘分区 fdisk /dev/vdb 第三.ext3格式化分区 mkfs.ext3 /dev/vdb1 第四.挂载新分区 A - 新建目录 ...
- js_在原有的日期上添加天数输出添加后的日期
开始编码工作也有段时间了,想想没有留下点什么,有点遗憾.学到的一些经验,写写,分享一下.也给自己整理一下. 今天分享一下,在原有的日期上添加天数输出添加后的日期.开始做的时候,简单的思路是,直接用ne ...
- 工程化管理--maven
mavne模型 可以看出 maven构件都是由插件支撑的 maven的插件位置在:F:\MavenRepository\org\apache\maven\plugins Maven仓库布局 本地仓库 ...
- Spring Boot提供的特性
一.导览 本文主要按以下模块介绍spring Boot(1.3.6.RELEASE)提供的特性. SpringApplication类 外部化配置 Profiles 日志 开发WEB应用 Securi ...
- Kaggle机器学习之模型集成(stacking)
Stacking是用新的模型(次学习器)去学习怎么组合那些基学习器,它的思想源自于Stacked Generalization这篇论文.如果把Bagging看作是多个基分类器的线性组合,那么Stack ...
- CiteSeer统计的计算机领域的期刊和会议的影响因子(2005)
产生自CiterSeer 2005数据库,实际的影响因子可能更高.仅供参考使用.真实的IF还需去官网查看 . OSDI: 3.31 (top 0.08%) . USENIX Symposium on ...
- Pylot网站Web服务器性能和负载压力测试-适用Windows可绘制图表
为了能够准确地评估网站服务器对网络流量的承受能力,我们一般会采取模拟网站用户访问,通过不断地增加并发数,延长访问时长,从而最终得出网站Web服务器的性能和负载能力.当然也可以通过Web压力测试,来完善 ...
- CentOS 7下安装php-redis扩展及简单使用
前言: 在本篇文章中,我将给大家介绍如何在CentOS7上安装PHP-Redis扩展以及一些简单的实用,关于如何在Centos上安装redis的,可以参考 Redis在CentOS 7上的安装部署 ...