Python3学习
数字number
数学函数
abs(x)返回数字的绝对值
ceil(x)返回数字的上入整数
floor(x)返回数字的下舍整数
(x>y)-(x<y)如果x<y返回-1,如果x==y返回0,如果x>y返回1
exp(x)返回e的x次幂
fabs(x)以浮点数形式返回数字的绝对值,eg:math.fabs(-10)返回10.0
log(x) eg:math.log(math.e)返回1.0,math.log(100,10)返回2.0
max(x1,x2,....) min(x1,x2,....)
modf(x)返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示
pow(x,y)计算x**y的值
round(x,[n])返回浮点数x四舍五入的值,如给出n值,则代表摄入到小数点后的位数.也就是保留几位小数的意思.
sqrt(x)求平方根
随机数函数
choice(seq):choice()是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用该方法。
import random
print(random.choice(range(100)))
print(random.choice([1,2,3,4,5,2,4]))
print(random.choice('liuqigao'))
输出:
25 2 a
random.randrange(x)
import random
print(random.randrange(0,100,2))#从1-100中随机选取一个偶数
print(random.randrange(1,18,3))#从1-18中随机选取一个能被3除余1的数
print(random.randrange(100))#从0-99中选取一个随机数
58 1 35
random.random()返回一个[0,1)的随机数
import random
print(random.random())
0.7122960806900803
字符串
访问字符串值
var1='hello world'
var2='runoob'
print(var1[1])
print(var2[0:3])
输出:
e run
字符串更新
var1='hello world'
print("已更新字符串:",var1[:6]+'lqg')#保留前6个字符字段
输出:
已更新字符串: hello lqg
转义字符
import time
for i in range(101):
print("\r{:3}%".format(i),end=' ')
time.sleep(0.5)
-
import time
:导入 Python 的time
模块,这个模块提供了各种与时间相关的函数。 -
for i in range(101):
:这是一个 for 循环,它会迭代 101 次,因为range(101)
生成从 0 到 100 的整数序列。 -
print("\r{:3}%".format(i),end=' ')
:这行代码使用print
函数来输出当前的百分比。"\r"
是一个回车符,它会让光标返回到当前行的开头,这样新的输出就会覆盖掉旧的输出,从而实现进度条的效果。"{:3}%"
是一个格式化字符串,{:3}
表示输出的数字会占据至少 3 个字符的宽度,如果数字不足 3 位,会在前面补空格。.format(i)
用于将循环变量i
插入到格式化字符串中。end=' '
表示每次输出后不换行,而是在末尾添加一个空格,这样可以在下一次迭代时覆盖前一次的输出。 -
time.sleep(0.05)
:这行代码调用time
模块的sleep
函数,使程序暂停 0.05 秒。这个暂停是为了让进度条的更新看起来更平滑,而不是瞬间完成。
字符串运算符
+:字符串连接
*:重复输出字符串 a=“hello” a * 2=hellohello
[]:索引获取字符 a[1] e
[:]截取字符串的一部分,遵循左闭右开,str[0:2]是不包含第3个字符的
in:成员运算符-如果字符串中包含给定的字符返回True
not in:若不包含则返回True
字符串格式化
print("我叫%s今年%d岁!"%('lqg',100))
我叫lqg今年100岁!
字符串内建函数
str.replace(old,new,max)
str = "abc defg aa asid aihdsa aaa"
print(str.replace("a","6",3))
6bc defg 66 asid aihdsa aaa
一个例子:
n = input("")
s = "〇一二三四五六七八九"
for c in "0123456789":
n = n.replace(c, s[eval(c)])
print(n)
1283719 一二八三七一九
数字类型转换
int(x)将x转换为一个整数。
float(x)将x转换到一个浮点数。
a=1.12312
print(int(a))
输出:
1
列表
访问列表中的值
list=['Google','Runoob',1997,2000]
list2=[1,2,3,4]
list3=['a',"b"]
list4=['red','green']
print(list4[0])
print(list4[-1])
print(list2[0:3])
输出:
red
green
[1, 2, 3]
更新列表
使用append()方法可以添加列表
list2=[1,2,3,4]
list2[0]=2
print(list2)
list2.append(5)
print(list2)
输出:
[2, 2, 3, 4] [2, 2, 3, 4, 5]
删除列表元素
list=['lqg','yy',2004,2004]
del list[2]
print(list)
输出:
['lqg', 'yy', 2004]
列表截取拼接
list=[1,2,3,4,5,6,7,8,9,10]
list += [11,12,13,14,15,16,17,18,19,20]
print(list)
输出:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]
嵌套列表
a=['a','b','c']
b=[1,2,3]
x=[a,b]
print(x)
print(x[0])
print(x[0][2])
输出:
[['a', 'b', 'c'], [1, 2, 3]] ['a', 'b', 'c'] c
☆列表比较
import operator
a=[1,2]
b=[3,4]
c=[1,2]
print("比较是否一致",operator.eq(a,b))
print("比较是否一致",operator.eq(a,c))
输出:
比较是否一致 False 比较是否一致 True
一些函数&方法
函数
a=[1,2,3,4,5,6,7,8,9]
print(len(a))
print(max(a))
print(min(a))
str="lqgyy"
list1=list(str)#将元组或字符串转换为列表list(sql)
print(list1)
输出:
9 9 1 ['l', 'q', 'g', 'y', 'y']
方法
a=['y','y',5,2,0,1,3,1,4]
a.append('l')#末尾添加一个元素
print(a)
print(a.count('y'))#计算某个元素出现次数
list=['q','g']
a.extend(list)#在后面拓展一个列表,元组,集合都可以a=('q','g') a={'q','g'}
print(a)
print(a.index('y'))#找出某个值第一个匹配项的位置
a.insert(9,520)#直接将这个值插入索引处,后面的值后移
print(a)
a.pop()#若默认的话就是第-1个
print(a)
a.remove(520)#溢出列表某个值的第一个匹配项
print(a)
a.reverse()#反向列表中的元素
print(a)
输出:
['y', 'y', 5, 2, 0, 1, 3, 1, 4, 'l'] 2 ['y', 'y', 5, 2, 0, 1, 3, 1, 4, 'l', 'q', 'g'] 0 ['y', 'y', 5, 2, 0, 1, 3, 1, 4, 520, 'l', 'q', 'g'] ['y', 'y', 5, 2, 0, 1, 3, 1, 4, 520, 'l', 'q']
排序
a=[1,3,5,2,7,3,2,62,63,21]
a.sort()#默认情况下是升序排序
print(a)
a.sort(reverse=True)#增加rever=True就是降序
print(a)
输出:
[1, 2, 2, 3, 3, 5, 7, 21, 62, 63] [63, 62, 21, 7, 5, 3, 3, 2, 2, 1]
def takeSecond(a):
return a[1]
list=[(2,2),(1,4),(4,1),(1,3)]
list.sort(key=takeSecond)
print(list)
输出:
[(4, 1), (2, 2), (1, 3), (1, 4)]
元组
本章知识比较简单就先省略了
字典
创建字典
dict={'lqg':123,'yy':'456'} print(dict) print("长度:",len(dict)) print(type(dict))#查看类型
输出:
{'lqg': 123, 'yy': '456'} 长度: 2 <class 'dict'>
访问字典的值
dict={'name':'lqg','age':'20','class':'jike1'} print("名字:",dict['name'])#将对应键放入方括号中 print('年龄:',dict['age'])
输出:
名字: lqg 年龄: 20
修改字典
dict={'name':'lqg','age':20,'class':'jike1'} dict['age']=18 dict['name']='yy' print(dict)
输出:
{'name': 'yy', 'age': 18, 'class': 'jike1'}
删除字典元素
dict={'name':'lqg','age':20,'class':'jike1'} del dict['name'] print(dict)
输出:
{'age': 20, 'class': 'jike1'}
内置函数
dict={'name':'lqg','age':20,'class':'jike1'} print(len(dict)) print(str(dict)) print(type(dict))
输出:
3 {'name': 'lqg', 'age': 20, 'class': 'jike1'} <class 'dict'>
内置方法
dict.items()
集合
创建集合和一些方法
set1={1,2,3,4} set2=set([4,5,6,7,4,4,4,4,4,4])#使用set()函数从列表创建集合 print(set2)#集合去重功能 a=4 in set2#判断某个元素是否在集合内 b=5 in set1 print(a,b)
输出:
{4, 5, 6, 7} True False
集合运算
set1={1,2,3,4} set2=set([4,5,6,7,4,4,4,4,4,4])#使用set()函数从列表创建集合 print(set1-set2)#减 print(set1|set2)#或 print(set1&set2)#并 print(set1^set2)#不重叠
输出:
{1, 2, 3} {1, 2, 3, 4, 5, 6, 7} {4} {1, 2, 3, 5, 6, 7}
添加元素
set1={2,3,4} set2=set([4,5,6,7,4,4,4,4,4,4])#使用set()函数从列表创建集合 set1.add(1) print(set1) set1.update({8,7})#这里的正数会自动排序 print(set1)
输出:
{1, 2, 3, 4} {1, 2, 3, 4, 7, 8}
移除元素
set1={1,2,3,4} set1.remove(1) print(set1)
输出:
{2, 3, 4}