Python基础学习
1.多个变量赋值
示例1:
a = b = c = 1
示例2:
a, b, c = 1, 2, "runoob"
2.标准数据类型
Python3 中有六个标准的数据类型:
- Number(数字)
- String(字符串)
- List(列表)
- Tuple(元组)
- Set(集合)
- Dictionary(字典)
Python3 的六个标准数据类型中:
不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)
下面代码以及结果展示:
s = 'this is string'
s,type(s)
('this is string', str)
l1 = ['nas',123,'meet']
l1,type(l1)
(['nas', 123, 'meet'], list)
t1 = ('google','dasdda')
t1,type(t1)
(('google', 'dasdda'), tuple)
d1 = {'dad':3,'we':4}
d1,type(d1)
({'dad': 3, 'we': 4}, dict)
s1 = {1,23,4,4,45,6,7,5,4}
s1,type(s1)
({1, 4, 5, 6, 7, 23, 45}, set)
3.删除对象
del variables
4.推导式
4.1.列表推导式:
[表达式 for 变量 in 列表]
[表达式 for 变量 in 列表 if 条件]
[f for f in range(10) if f%2==0]
[0, 2, 4, 6, 8]
4.2.元组推导式:
(表达式 for 变量 in 列表)
(表达式 for 变量 in 列表 if 条件)
元组推导式返回的结果是一个生成器对象
zz = (f for f in range(10) if f%2==0)
tuple(zz) # 使用tuple进行转换
(0, 2, 4, 6, 8)
4.3.集合推导式:
{表达式 for 变量 in 列表}
{表达式 for 变量 in 列表 if 条件}
{i**2 for i in (1,2,3,4)}
4.4.字典推导式:
{表达式 for 变量 in 列表}
{表达式 for 变量 in 列表 if 条件}
{x: x**2 for x in (1, 2, 3, 4)}
5.数学函数
import math # 导入数学库函数
math.fabs(-3) #绝对值计算
3.0
math.ceil(4.3) # 向上取整
5
math.exp(1)
2.718281828459045
math.floor(4.7) # 向下取整
4
math.log2(8)
3.0
math.sqrt(9) # 平方
3.0
math.pow(2,3) # 幂运算
8.0
round(3.5) # 四舍五入
4
6.随机数函数
import random
list01 = [2,5,3,2,4,7,6,4,9]
random.choice(list01) # 随机选择
4
random.randrange(1,9,2) # 在指定范围内随机选择一个随机数
7
random.random() # 随机生成下一个实数,它在[0,1)范围内
0.6850482416631929
random.randint(1,10) # 随机生成1-10之间的整数,包括10
2
random.seed(2) # 固定随机概率
random.shuffle(list01) # 随机打乱数据顺序
[3, 4, 6, 5, 4, 7, 2, 9, 2]
random.uniform(1,4) # 随机生成下一个实数,它在[x,y]范围内
2.244012983167209
7.字符串
7.1.字符串格式化
print ("我叫 %s 今年 %d 岁!" % ('小明', 10))
我叫小明 今年10岁!
7.2.f-string
f-string 格式化字符串以 f 开头,后面跟着字符串,字符串中的表达式用大括号 {} 包起来,它会将变量或表达式计算后的值替换进去
name = 'Runoob'
f'Hello {name}'
'Hello Runoob'
f'{1+2}'
'3'
7.3.字符串常见操作
name.upper() # 转换为大写
'RUNOOB'
name.swapcase() # 大小写互相转化
'rUNOOB'
name.startswith('Ru') # 判断字符串以什么开头
True
max(name) # 返回字符串最大的字母
'u'
name.replace('o', 'k') # 替换操作
'Runkkb'
name.find('b') # 检测 str 是否包含在字符串中,如果指定范围 beg 和 end ,则检查是否包含在指定范围内,如果包含返回开始的索引值,否则返回-1
5
name.capitalize() # 将字符串的第一个字母转换成为大写
'Runoob'
len(name) # 统计字符长度
6
8.list
8.1.list:
- list()
- max()
- min()
- len()
8.2.list 方法
- append(obj)
- count(obj)
- extend(seq)
- index(obj)
- insert(index, obj)
- pop(index)
- remove(obj)
- reverse()
- sort()
- clear()
- copy()
list01 = list(range(1,10))
max(list01),len(list01)
(9, 9)
list01.append(2)
[1, 2, 3, 4, 5, 6, 7, 8, 9, 2]
list01.count(3) # 统计3出现的次数
1
list01.sort()
[1, 2, 2, 3, 4, 5, 6, 7, 8, 9]
list(reversed(list01)) # 反转数组转成list
[9, 8, 7, 6, 5, 4, 3, 2, 2, 1]
list01.pop(1) # 取出该位置的数据
2
list01.insert(4,78) # 在第四个位置插上数据78
list01.remove(78) # 移除数据78
[1, 2, 3, 4, 5, 6, 7, 8, 9]
list01.index(1) # 返回数据1在列表中的位置
0
list02 = list01.copy() # 复制操作,对于新数组的编辑不影响原数组
[1, 2, 3, 4, 5, 6, 7, 8, 9]
9.tuple
9.1.函数:
- tuple()
- max()
- min()
- len()
对于列表的增删改查方法在tuple全部失效
sc = (1,2,3,4,5,6)
sc,type(sc)
((1, 2, 3, 4, 5, 6), tuple)
sc[5], sc[3:] # 允许访问
(6, (4, 5, 6))
del sc # 允许整个删除
6 in sc
True
10.字典
tinydict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
tinydict['Name'] # 访问
'Runoob'
tinydict['Age'] = 8 # 更新
tinydict['birth'] = 20020101 # 添加
del tinydict['birth'] # 删除属性
10.1.方法
- clear()
- copy()
- get(key)
- items()
- keys()
- update(dict1)
- values()
- pop(key)
- popitems()
tinydict.get('Name') # 得到对应键的值
'Runoob'
tinydict.items() # 输出所有的键值对
dict_items([('Name', 'Runoob'), ('Age', 8), ('Class', 'First')])
tinydict.keys() # 输出所有的键
dict_keys(['Name', 'Age', 'Class'])
tinydict.values() # 输出所有的值
dict_values(['Runoob', 8, 'First'])
tinydict.popitem() # 删除最后一个键值对
('Class', 'First')
tinydict.pop('Name') 删除属性Name以及其对应的值
'Runoob'
11.集合
11.1.方法
- add()
- clear()
- copy()
- pop()
- remove()
- update(set1)
- discard()
thisset = {'a','b','x','c','v','f'}
thisset.add(2) # 添加元素2
thisset.update({4,7}) # 更新集合
thisset.pop() # 删除最后一个元素
thisset.remove('x') # 移除x
thisset.discard(7) # 移除指定元素
thisset.copy() # 集合复制
本文来自博客园,作者:Ancientswar,转载请注明原文链接:https://www.cnblogs.com/ancientswar/p/16475404.html

浙公网安备 33010602011771号