python学习第五天
比较运算符
< 小于
<= 小于等于
>= 大于等于
> 大于
== 等于
!= 不等于
语法:
左表达式 < 右表达式
说明:
比较运算符返回布尔类型的值
示例:
10 < 20 #True
1 + 10 > 2 + 8 #True
10 < 20 <= 30 #True
python运算符优先级
** 指数 (最高优先级)
~ + - 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
* / % // 乘,除,取模和取整除
+ - 加法减法
>> << 右移,左移运算符
& 位 'AND'
^ | 位运算符
<= < > >= 比较运算符
<> == != 等于运算符
= %= /= //= -= += *= **= 赋值运算符
is is not 身份运算符
in not in 成员运算符
not or and 逻辑运算符
数值对象的构造函数
float(x)
用字符串或数字转换为浮点数,如果不能得出参数则返回0
例如
>>> float(1)
1.0
>>> float(.5)
0.5
>>> float(0)
0.0
>>> float("123") #可以把字符串中的数字,转换为浮点型数
123.0
>>> float(True)
1.0
>>> float() #如果什么都不写,等同于0
0.0
要转成浮点型数,前提条件必须是字符串或者数字,如果是字符串的话,得表示这一是个浮点型数
int(x,y=10)或int(x)
用数字或字符串转换为整数,如果不给出参数,则返回0
int(x)与float(x)用法相近
例如
>>> int(3.14) #使用浮点型数的时候,只显示整数位
3
>>> int("5")
5
>>> int(True)
1
>>> int()
0
特别说一下,在int(x,base=y)中,y相当于数字的进制,在不声明y的情况下默认为10。
所以,其整体意义可以看作,y进制数字x换算为10进制的数字。且,y的取值范围为 2<y<=36。
例如
>>> int(1000101000,10)
1000101000
>>> int(1000101000,2)
552
>>> int(1000101000,6)
10085688
>>> int(1000101000,8)
134251008
>>> int(1000101000,16)
68720529408
>>> int("100a",16) #由于声明了100a为一个16进制数字,所以得出结果4106
4106
>>> int(100a,16)
4106
complex(r=0.0,i=0.0)
用数字创建一个复数(实部为r,虚部为i)
例如:
>>> complex() #如果什么都不写,等同于复数(0+0j)
0j
>>> complex(1,1)
(1+1j)
>>> complex(1.257,3.15)
(1.257+3.15j)
bool(x)
用x创建一个布尔值(True/Flase)
bool函数在如下情况下才会返回Flase:
1.None 空值
2.False 布尔假值
3.0,0.0,0j 各数字类型的0
4."" 空字符串
5.() 空元组
6.[] 空列表
7.{} 空字典
8.set() 空集合
例如:
>>> bool()
False
>>> bool(0.0)
False
>>> bool(None)
False
>>> bool(2)
True
>>> bool(1)
True
>>> bool(True)
True
>>> bool(1==1)
True
>>> bool("a"!="b")
True
>>> bool("x+y"=="y+x")
False
>>> bool("x+y"=="x+y")
True
函数调用:
函数名(传参列表)
说明:
函数调用时表达式,一定会返回一个对象的引用关系。
内建的数值型函数:
abs(x)
作用:
取x的绝对值
例如:
>>> abs(-1)
1
>>> abs(5-75)
70
round(number[,ndigits])
作用:
对数值进行四舍五入,ndigits是小数向右取整的位数,负数表示向左取整,不填则表示取整数
例如:
>>> round(3.955474,2)
3.96
>>> round(3.955474)
4
>>> round(77777773.955474,-2)
77777800.0
pow(x,y,z=None)
作用:
相当于x**y 或x**y%z
例如:
>>> pow(3,3,2)
1
>>> pow(3,3)
27
help(函数名)
作用:
用来查询对应函数名的帮助文档
语句 statement
语句是由一些表达式组成,通常一条语句可以独立执行来完成一部分事情并形成结果
一条语句建议写在一行内
多条语句写在一行内需要用分号;隔开
例如:
print('hello')
x=100+200
print(x)
#写在一起为:
print('hello');x=100+200;print(x)
一般情况下不建议使用分号写在一行,可读性差,使用分号一般用于加密。
换行
显示换行
折行号 \
例如:
# 显示换行实例
>>> i = 1+2+3 \
... +4+5+6
>>> i
21
用'\'表示换行,如果不加的话,python就会将其识别为为i赋值1+2+3+4,后两行的只做计算,没有赋值。
隐藏式换行
所有括号内的换行
括号的种类
(),[],{}
例如:
#隐式换行
>>> i=(1+2+3
... +5+6
... )
>>> i
17
因为在python中,括号都是成对出现的。换句话说,如果有一个左括号,那么直到出现右括号,在这期间
python都会视为隐式换行状态。
基本输入输出
基本输入函数
input
作用:
从标准输入设备上读取一个字符串(末尾的换行符会被删除)
格式:
input('提示字符串')
说明:
返回输入的字符串(仅python3,python2可能会返回一个整数或者其他值)
'提示字符串'可以为空
例如:
s = input("请输入字符串:")
print("您输入的字符串为:",s)
#print(s+1)#会报错,字符串无法与数字相加
i = int(s)#声明一个新变量i,将其与使用int函数的变量s的值进行绑定,从而将字符串转为int型
print(i+1)#这样数字与数字可以相加。
补充说明
有的时候运行.py文件会报出某一行的代码有这种报错,
SyntaxError: Non-ASCII character '\xe6' in file input_code.py on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
这是因为,如果要在python2的py文件里面写中文,则必须要添加一行声明文件编码的注释,否则python2会默认使用ASCII编码。
python2的默认编码文件是用的ASCII码,将文件存成了UTF-8,编译就可以通过。或在在py文件开头(必须是第一行)加入
#coding=utf-8 或 # -*- coding:utf-8 -*-
或者
直接使用python3运行该.py文件。
即可解决问题
基本输出函数 print
作用:
将一系列的值以字符串形式输出到标准输出设备上,默认为终端。
格式
print(value,....,sep='',end='\n')
选项的关键字参数为:
sep 决定两个值之间的分隔符,默认为一个空格
例如:
#在不示意分隔符的时候,每一个单独的内容默认使用空格分隔开。
>>>print(1,2,3,4)
1 2 3 4
#如果示意了分隔符,则会以示意的那个内容分隔
>>>print(1,2,3,4,sep="*")
1*2*3*4
>>>print(1,2,3,4,sep="")
1234
end 输出完毕后在六末尾自动追加一个字符,默认为换行符'\n'
也就是说,在end里填入什么,该行的末尾就会输出什么。
例如:
>>>print(1,23,45,6,77,end="\n\n\n\n\n\n")
>>>print("last line")
1 23 45 6 77
last line
>>> print("asd",end="abc\n \nmmv\n \n")
asdabc
mmv
>>>
在end里每写一个\n,就等于按下一次回车,进行一次换行。
如果不在end里写任何内容,表示不换行
例如:
>>>print(1,23,45,6,77,end="")
>>>print("last line")
1 23 45 6 77last line