蓝桥杯(一)——Python语法基础

本文详细介绍了Python的基础数据类型,包括Number(整型、浮点型、复数类型)、String(访问运算、字符串函数)、List(创建、列表函数)、Tuple和Dictionary(访问、添加删除)。同时,还涵盖了输入输出的操作,如输入处理、输出格式控制以及datetime模块的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

 一、数据类型

1.Number

1.1整型

1.2浮点型

1.3复数类型

1.4常用数学函数

2.String

2.1字符串访问和运算

2.2字符串函数

         3.List(重点)

3.1列表函数

         4.Tuple

5.Dictionary

5.1字典的访问

5.2添加,修改,复制,删除

二、输入与输出

2.1输入

2.2输出 



 一、数据类型


1.Number

1.1整型

(1)bin():转化成二进制

(2)int():转化为十进制

(3)oct():转化为八进制

(4)hex():转化为十六进制

1.2浮点型

python只有float类型,由于精度和数制转换问题,浮点数运算的结果有时与预期存在偏差。

解决方法:
使用round(f,n)函数限定小数位数为n。

1.3复数类型

c1=1.2+5.3j  #表示方法一
c2=complex(1.2,5.3)  #表示方法二
print("实部:",c1.real)
print("虚部:",c1.imag)

1.4常用数学函数

#python中的内置函数
abs(x):返回x的绝对值
pow(x,y):返回x的y次方
round(x,[n]):返回x保留n位小数,四舍五入
max(a,b,c):返回a,b,c中的最大值
min(a,b,c):返回a,b,c中的最小值

#math中的函数
import math
math.sqrt(x):返回x的平方根
math.exp(x):返回e的x次幂
math.log(y,x):返回以x为基数的y的对数 logxy
math.sin(x):返回x的正弦
math.cos(x):返回x的余弦
math.tan(x):返回x的正切

2.String

2.1字符串访问和运算

a='asdfg'
切片访问(列表和元组都与此相同): a[start:end:step] start:开始索引 end:结束索引(不包括) step:步长
a[1:4] #'sdf':索引为1到3的字符
a[1:] #'sdfg':从第2个字符开始的所有字符
a[:4] #'asdf':第5个字符之前的所有字符(不包括第5个)

+:字符串连接
*:重复输出字符串

2.2字符串函数

str.find('a'):返回a在str中的索引值
str.index('a'):用法与find相似
len(str):返回str的长度
str.count('a'):返回a在str中出现的次数
str.replace('a','b'[,max]):将str中的a替换成b,max为替换的最大次数(替换后原本的str没有变)
str.replace('a',''):等同于将str中的a删除
字符串格式化

3.List(重点)

列表中的元素可以相同可以不同,且可以是不同的数据类型。

3.1列表的创建

一维列表:

n=int(input())
list=[0 for i in range(n)]
3
[0,0,0]

二维列表:

(1)

n,m=map(int,input().split())
list=[[0 for i in range(n)]for j in range(m)]
#等价于
list=[[0]*n]*m
3 4
[[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0]]

(2)

n,m=map(int,input().split())
mp=[]
for i in range(n):
    a=list(map(int,input().split()))
    mp.append([])
    for j in a:
        mp[i].append(j)
2 3
1 1 1 3
1 2 2 2
[[1, 1, 1, 3], [1, 2, 2, 2]]

3.2列表函数

添加元素:
list.append(item):在列表末尾添加元素item
list.insert(index,newitem):在索引为index的地方添加新的元素
list.extend(seq):在列表末尾添加多个元素(seq)
复制和删除列表元素
del list[index]:删除索引为index的元素
list.pop(index):删除索引为index的元素,默认为最后一个元素
list.remove(item):删除列表元素item
list.clear():删除列表所有元素
del list:列表删除
list2=list.copy():浅复制,list2改变list不变
list2=list:列表复制,list2改变list改变
查找与排序:
list.index(item):返回元素item在列表中的索引
list.sort():对列表list中的元素按照一定的规则排序
列表统计:
len(list):返回列表长度
max(list):返回列表中最大元素
min(list):返回列表中最小元素
sum(list):返回列表中元素的和
list.count(item):返回item在列表中出现的次数
列表的运算:
+:两个列表相加
*:原列表元素重复n次的列表
in/not in:正确返回True,错位返回False
关系运算符:<,>,从两个列表第一个元素开始比较,有结果结束,否则继续比较后面元素
 

4.Tuple

元组创建后,对其中元素不能进行修改,即元组创建后不能添加新的元素、删除元素或者修改元素(没有tuple.copy()函数),也不能对元组进行排序等操作。

元组中的元素类型可以不同。

5.Dictionary

字典的键(key)是不可变类型;值可以使简单数据或者组合数据。在一个字典中键是唯一的,值可以不唯一。

5.1字典的访问

访问单个值,dict[key] 或者 dict.get(key)

a={'a':"Mary",'b':'Jone','c':'Amy'}
print(a['a'])
print(a.get('b'))
Mary
Jone

遍历字典元素:

dict.items():以列表形式返回字典中的所有的键值对,每个键值对以元组存在
dict.keys():以列表形式返回字典中所有的键
dict.values():以列表的形式返回字典中所有的值

5.2添加,修改,复制,删除

添加和修改

dict1={'a':"Mary",'b':'Jone','c':'Amy'}
dict1['d']='Tom' #添加
dict1['b']='Jerry' #修改

删除和复制(浅复制:dict.copy()和深复制:=)

del dict[key]:删除关键字为key的元素
dict.pop(key):删除关键字为key的元
dict.popitem():随机删除
dict.clear():删除所有元素

二、输入与输出


2.1输入

1.一行输入多个字符

a,b=input().split()(空格隔开)

a,b=input().split(',')(',' 隔开)

2.一行输入多个数字

a,b=map(int,input().split()) (空格隔开)

3.列表的输入

a=list(input().split())

a=list(map(int,input().split()))

2.2输出 

1.sep和end的使用
end: 默认是换行,表示两个字符串最后以什么结尾。

sep: 默认是空格,表示两个字符串之间用什么分割。

>>print('a',end=" ")

>>print('b')

>> a b

>>print('a','b',sep=',')

>>a,b

2.%实现多个变量的输出

>>a='闰年'

>>b=366

>>print("%s是%d天"%(a,b))

>>闰年是366天

 2.2输出 参考:https://www.runoob.com/python/python-built-in-functions.html

2.3datetime()函数

1.赋值 tody=datetime.date(2023,4,7)

2.判断星期几:week=today.weekday() 若为星期一则返回0

3.单独获取年月日:today.strftime("%d") 日

                                today.strftime('%m') 月

                                today.strftime('%y') 年

4.天数加一:delay = datetime.timedelta(days = 1)

                      tomorrow=today+delay

### 蓝桥杯 Python 语法教程及例题 #### 编写规范 为了确保代码清晰易懂,在编写 Python 程序时应当遵循特定的编码风格。每个 `import` 语句仅用于导入单模块,这有助于保持文件整洁有序[^1]。 当遇到较长的语句时,可以在行尾使用反斜杠 `\` 来实现续行操作。合理利用空白字符以及空行可以显著提升代码可读性。此外,建议通过加入异常处理机制来增强应用程序面对错误情况下的鲁棒性,并且在整个项目周期内持续关注其测试性能。 #### 条件判断 Python 支持多种类型的条件表达式,它们能够返回布尔值以决定程序执行路径。任何非零数值、非空序列(如列表、元组)、非空映射(如字典)以及其他真值均会被视为 True;反之则为 False。例如: ```python if some_variable: do_something() else: handle_other_case() ``` 这里 `some_variable` 可能是简单的整数、浮点数或是更复杂的容器对象等。 #### 数据计数器应用实例 对于涉及频率统计的任务场景下,`collections.Counter` 类提供了便捷的方法来进行元素频次计算。两个 Counter 对象之间支持加法、减法、交集和并集四种基本算术运算[^2]。 ```python from collections import Counter c = Counter('aaabb') d = Counter('abbbccc') print(c + d) # 结果:Counter({'a': 4, 'b': 4, 'c': 3}) print(c - d) # 结果:Counter({'a': 2}) (移除了共同部分) print(c & d) # 结果:Counter({'a': 2, 'b': 1}) (取最小公共数量) print(c | d) # 结果:Counter({'a': 3, 'b': 3, 'c': 3}) (取最大值) ``` #### 字符串插值技术——f-string 自 Python 3.6 版本起引入了种新的字符串格式化方式叫做 f-string 。它允许开发者直接在字符串内部嵌入变量名或表达式,从而简化了原本繁琐的文字拼接过程[^3]。 ```python name = "Alice" age = 30 greeting = f"Hello {name}, you are {age} years old." print(greeting) ``` 上述例子展示了如何创建条个性化的问候消息,其中 `{}` 中的内容会在运行时刻被实际值所替代。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值