1、内置函数bin()、oct()、hex()用来将整数转换为二进制、八进制和十六进制形式,这三个函数都要求参数必须为整数。
>>> bin(555) #把数字转换为二进制串
'0b1000101011'
>>> oct(555) #转换为八进制串
'0o1053'
>>> hex(555) #转换为十六进制串
'0x22b'
2、内置函数float()用来将其他类型数据转换为实数,complex()可以用来生成复数。
float(3) #把整数转换为实数
3.0
>>> float('3.5') #把数字字符串转换为实数
3.5
>>> float('inf') #无穷大,其中inf不区分大小写
inf
>>> complex(3) #指定实部
(3+0j)
>>> complex(3, 5) #指定实部和虚部
(3+5j)
>>> complex('inf') #无穷大
(inf+0j)
3、ord()和chr()是一对功能相反的函数,ord()用来返回单个字符的Unicode码,而chr()则用来返回Unicode编码对应的字符,str()则直接将其任意类型参数转换为字符串。
>>> ord('a') #查看指定字符的Unicode编码
97
>>> chr(65) #返回数字65对应的字符
'A'
>>> chr(ord('A')+1) #Python不允许字符串和数字之间的加法操作
'B'
>>> chr(ord('国')+1) #支持中文
'图'
>>> ord('董') #这个用法仅适用于Python 3.x
33891
4、>>> str(1234) #直接变成字符串
'1234'
>>> str([1,2,3])
'[1, 2, 3]'
>>> str((1,2,3))
'(1, 2, 3)'
>>> str({1,2,3})
'{1, 2, 3}'
5、list()、tuple()、dict()、set()用来把其他类型的数据转换成为列表、元组、字典、集合,或者创建空列表、空元组、空字典和空集合。
>>> list(range(5)) #把range对象转换为列表
[0, 1, 2, 3, 4]
>>> tuple(_) #一个下划线表示上一次正确的输出结果
(0, 1, 2, 3, 4)
>>> dict(zip('1234', 'abcde')) #创建字典
{'4': 'd', '2': 'b', '3': 'c', '1': 'a'}
>>> set('1112234') #创建可变集合,自动去除重复
{'4', '2', '3', '1'}
6、内置函数type()和isinstance()可以用来判断数据类型,常用来对函数参数进行检查,可以避免错误的参数类型导致函数崩溃或返回意料之外的结果。
>>> type(3) #查看3的类型
>>> type([3]) #查看[3]的类型
>>> type({3}) in (list, tuple, dict) #判断{3}是否为list,tuple或dict类型的实例
False
>>> type({3}) in (list, tuple, dict, set) #判断{3}是否为list,tuple,dict或set的实例
True
>>> isinstance(3, int) #判断3是否为int类型的实例
True
>>> isinstance(3j, int)
False
>>> isinstance(3j, (int, float, complex)) #判断3是否为int,float或complex类型
True
7、内置函数eval()用来计算字符串的值,在有些场合也可以用来实现类型转换的功能。
>>> eval('3+5')
8
>>> eval('9') #把数字字符串转换为数字
9
>>> eval('09') #抛出异常,不允许以0开头的数字
SyntaxError: invalid token
>>> int('09') #这样转换是可以的
9
>>> list(str([1, 2, 3, 4])) #字符串中每个字符都变为列表中的元素
['[', '1', ',', ' ', '2', ',', ' ', '3', ',', ' ', '4', ']']
>>> eval(str([1, 2, 3, 4])) #字符串求值
[1, 2, 3, 4]
8、max()、min()、sum()这三个内置函数分别用于计算列表、元组或其他包含有限个元素的可迭代对象中所有元素最大值、最小值以及所有元素之和。
sum()默认(可以通过start参数来改变)支持包含数值型元素的序列或可迭代对象,max()和min()则要求序列或可迭代对象中的元素之间可比较大小。
>>> from random import randint
>>> a = [randint(1,100) for i in range(10)] #包含10个[1,100]之间随机数的列表
>>> print(max(a), min(a), sum(a)) #最大值、最小值、所有元素之和
>>> sum(a) / len(a) #平均值
9、函数max()和min()还支持default参数和key参数,其中default参数用来指定可迭代对象为空时默认返回的最大值或最小值,而key参数用来指定比较大小的依据或规则,可以是函数或lambda表达式。
>>> max(['2', '111']) #不指定排序规则
'2'
>>> max(['2', '111'], key=len) #返回最长的字符串
'111'
>>> print(max([], default=None)) #对空列表求最大值,返回空值None
None
10、input()和print()是Python的基本输入输出函数,input()一律返回字符串对待,必要的时候可以使用内置函数int()、float()或eval()对用户输入的内容进行类型转换。
11、Python字符串对象提供了大量方法用于字符串的切分、连接、替换等操作。
find()、split()、join()、lower()、upper()、swapcase()、replace()、strip()
12、lower()、upper()、swapcase()大小写转换、capitaliz 第一个字母转成大写
>>> s = "What is Your Name?"
>>> s.lower() #返回小写字符串
'what is your name?'
>>> s.upper() #返回大写字符串
'WHAT IS YOUR NAME?'
13、replace() 方法把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。默认全部替换。
语法:str.replace(old, new[, max])
14、strip() :用于删除字符串两端连续的空白符或指定字符。
>>> s = " abc "
>>> s.strip() #删除空白字符
'abc'
15、使用%运算符进行格式化,使用format方法进行格式化
1、常见的选择结构有单分支选择结构、双分支选择结构、多分支选择结构以及嵌套的分支结构,也可以构造跳转表来实现类似的逻辑。
循环结构和异常处理结构中也可以带有“else”子句,可以看作是特殊形式的选择结构。
if 表达式:
a=3
b=4
if a>b:
print(a+b)
print("end")
print("if end")
score=95
if score>=90 and score<=100:
print("A")
elif score>=80:
print("B")
else:
print("C")
2、三元运算符:并且在三元运算符构成的表达式中还可以嵌套三元运算符,可以实现与选择结构相似的效果。
3、Python主要有for循环和while循环两种形式的循环结构:
while循环一般用于循环次数难以提前确定的情况,当然也可以用于循环次数确定的情况;
for循环一般用于循环次数可以提前确定的情况,尤其适用于枚举或遍历序列或迭代对象中元素的场合。
while 条件表达式:
循环体
[else:
else子句代码块]
和
for 取值 in 序列或迭代对象:
循环体
[else:
else子句代码块]
九九乘法表
for i in range(1, 10):
for j in range(1, i+1):
print('{0}*{1}={2}'.format(i,j,i*j), end=' ')
print() #打印空行
break:语句所属层次的循环提前结束
continue:提前结束本次循环,忽略continue之后的所有语句,提前进入下一次循环。
sum=0
count=0
while True:
score=eval(input("请输入成绩"))
sum=sum+score
count=count+1
ch=input("是否继续输入:yes,no")
if ch == 'no':
break
avg=sum/count
print(avg)