python3基础知识梳理
2024-08-26 05:48:29
一、数据类型
1、数字
- int(整型)
- long(长整型)
- float(浮点型)
- complex(复数)
2、布尔值
- True或False
3、字符串
二、变量
变量命名规则:
- 变量名只能是 字母、数字或下划线的任意组合
- 变量名的第一个字符不能是数字
- 变量名不能为关键字(例如:and,or,continue,break,in,else,print 等)
三、字符串拼接
1、使用加号(+)
name = "Tom"
age = 25
print(name + "s age is " + str(age)) #输出:Toms age is 25
2、字符串格式化
name = "Tom"
age = 25
print("%s's age is %d" % (name,age) ) #输出:Toms age is 25
ps:在python中,使用+号连接字符串,每出现一个+号,就要重新在内存中申请一块空间,有多少个+号,就要申请多少块空间。一般不建设使用+号连接字符串。
四、列表和元组
1、列表(list)
- 创建列表
str_list = ['Tom','Lucy','Mary']
或者
str_list = list(['Tom','Lucy','Mary'])
- 索引(访问列表中某一个值)
str_list[0]
- 追加(增加元素到末尾)
str_list.append('lilei')
print(str_list) #输出:['Tom', 'Lucy', 'Mary', 'lilei']
- 插入(在指定位置加入元素)
str_list.insert(1,'lilei')
print(str_list) #输出:['Tom', 'lilei', 'Lucy', 'Mary']
- 删除(删除指定元素)
str_list.remove('Lucy')
print(str_list) #输出:['Tom', 'Mary']
- 切片
str_list = [3,4,5,6,7,8,9]
new_1 = str_list[1:3] #从索引1开始取,取到索引3
new_2 = str_list[0:6:2] #从索引0开始取,每两位一取,到第6位为止
new_3 = str_list[-2:] # 取后面2个数
new_4 = str_list[:3] # 取前面3个数
new_5 = str_list[::3] #所有数,每3个取一个 print(new_1,new_2,new_3,new_4,new_5) #输出:[4, 5] [3, 5, 7] [8, 9] [3, 4, 5] [3, 6, 9]
2、元组(tuple)
- 创建元组
age = (18,25,33)
或者
age = tuple((18,25,33))
除了不能修改、增加、删除元素,其它操作元组和列表几乎一样。
五、字典
使用key-value的存储方式
- 创建字典
phone = {
'张三':'',
'李四':'',
'王五':'',
}
- 获取字典中key的值
print(phone['张三']) #如果key不存在,会报错,key用中括号装
print(phone.get('老黄')) #如果key不存在,返回None,key用小括号装 #输出:13075632152
# None
- 赋值
phone['老黄'] = '' #新增
phone['张三'] = '' #修改
print(phone) #输出:{'王五': '13420321523', '老黄': '13678623153', '张三': '12300055555', '李四': '15732015632'}
#因为字典是无序的,所以每次输出的排列顺序都可能不同
- 删除
phone.pop('张三') #第一种方法
del phone['李四'] #第二种方法
phone.popitem() #随机删除某一个
- 遍历
for key in phone:
print(key,phone[key]) #输出:
# 王五 13420321523
# 张三 13075632152
# 李四 15732015632
- 多级嵌套
phone = {
'人事部':{'老张':'','老李':''},
'财务部':{'小丽':'','小映':''},
'技术部':{'老罗':''}
} print(phone['人事部']['老李']) #输出:13432023152
六、if语句
1、if...else
age = 16
if age <18:
print('你还未成年呢')
else:
print('你已经成年了')
2、if...elif....else
score = 85
if score > 0 and score< 60:
print('你的成绩不及格')
elif score >= 60 and score <80:
print('你的成绩及格了')
elif score>=80 and score<90:
print('你的成绩良好')
else:
print('你的成绩优秀')
七、while循环
i=0
num=0
while i<=100:
num+=i
i+=1
print('1-100累加等于%d'%num)
八、for...in循环
num = []
for i in range(10):
num.append(i)
print(num) #输出:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
九、用户交互(input)
import getpass
username = input("username:")
password = getpass.getpass("password:")
print(username)
print(password)
十、文件基本操作
打开文件:f = open('文件路径','模式') 或者 with open('文件路径','模式') as f:
模式:
- r:以只读方式打开文件
- w:打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
- a:打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
- w+:打开一个文件用于读写。(文件一打开就清空了,还能读到东西吗?)
- a+:打开一个文件用于读写。
读文件:
read() readlines() readline() 的用法
f = open('d:/test.txt','r') #以只读方式打开文件 print(f.read()) #read()一次读取文件的全部内容 for line in f.readlines(): #readlines()读取整个文件,并按行存进列表
print(line.strip('\n')) #去掉行尾的'\n' while 1:
line = f.readline() #readline()每次只读取一行
print(line.strip('\n'))
if not line:
break f.close() #关闭文件
写文件:
f =open('d:/test.txt','a')
f.write('hello,boy!\n')
f.close()
最新文章
- list集合的排序Comparator和Collections.sort
- 搭建vpn环境:centos7+openvpn
- Spring @AspectJ 实现AOP 入门例子(转)
- C# 发送HttpWebRequest获得网络图片的大小、尺寸
- http流请求时,被请求站点HttpContext.Current为null?
- Scrum4.0+5.0
- 怎样对CODESOFT中的条形码进行黑白转换
- trade 1.0 开源工具
- linux关机和重启的命令[转]
- 六种排序的C++实现
- WPF子界面向父界面传递带参数的委托
- C#连接Oracle数据库基本类
- CodeForces 672D Robin Hood
- Top命名的一些简单用法
- 小步快跑的公司可以最简化操作直接通过log4net将日志写入ElasticSearch
- python内置函数详细描述与实例演示
- 跨域访问技术CORS(Cross-Origin Resource Sharing)简介
- Dispatch Queue 之 dispatch_async
- [Python]Python 使用 for 循环的小例子
- Ubuntu 16.04配置JDK