Python学习笔记-1

简介: 1.变量和简单数据类型1)字符串xx.tilte()以首字母大写的方式显示每个单词xx.upper()大写

1.变量和简单数据类型

1)字符串

xx.tilte()以首字母大写的方式显示每个单词
xx.upper()大写
xx.lower()小写
f"hello,{xx1}xx{xx2}"在输出字符串重输出变量
xx.rstrip()删除右边的空白
xx.lstrip()删除左边的空白
xx.strip()删除两边的空白

2)数

只要操作数有一个是浮点数,得到的默认总是浮点数

书写很大的数时,可以使用下划线将其中的数字分组,print时不会打印其中的下划线

可以逗号给变量连续赋值,如a,b,c=0,1,2

2.列表

1)简介

students=["chenyanheng","chenzikun"]
print(students)
#-->["chenyanheng","chenzikun"]
print(students[0])
#-->chenyanheng
print(f"众所周知{students[0].title}是一个大帅比")
#-->众所周知Chenyanheng是一个大帅比

索引从0开始,要输出最后一个元素可以用xx[-1],倒数第二个xx[-2]类推

2)修改、增删元素

students=["chenyanheng","chenzikun"]
students[0]="shuaibi"修改元素
students.append(“chenshuaibi”)在列表末尾添加元素
students.insert(0,“shuai”)在索引0处添加空间,并将“shuai”储存到这个地方,将其他元素都右移一个位置
del students[0]删除索引为0处的元素
xx=students.pop()返回列表末尾的元素并后将其删除
xx=students.pop(1)弹出列表索引为1的元素并删除
students.remove(“shuai”)删除列表中一个为”shuai“值的元素

3)组织列表

students.sort()按字母顺序(升序)永久地修改列表元素的排列顺序
stusents.sort(reverse=True)按字母顺序(降序)永久地修改列表元素的排列顺序
print(sorted(students,reverse=False)临时修改列表元素的排列顺序
students.reverse()反转列表元素排列顺序
len(students)获得列表长度

4)避免索引错误

3.操作列表

1)遍历整个列表

for student in students:
 print(student)
有缩进的代码都会重复执行

2)避免缩进错误

expected an indented block缺少缩进块
unexpected indent不必要的缩进

3)创建数值列表

for value in range(1,5):
 print(value)
输出1到4(因为函数range()让python 从指定的第一个值开始数,到达指定的第二个值时结束,所以在第二个值时停止没有输出)
若range()参数列表里只有一个数,则从0到这个数-1
可以用函数list()将range()的结果转换为列表如numbers=list(range(1,6))
print(numbers)
使用range()可以在第三个参数设定步长,如range(1,10,3)=[1,4,7]
min(numbers)返回列表中的最小值
max(numbers)返回列表中的最大值
sum(numbers)返回列表数字的和
squares=[value**2 for value in range(1,11)]称为列表解析,可以直接将1到10每个数的平方放到列表中
==for value in range(1,11):
 squares.append(value**2)

4)使用列表的一部分

创建切片:返回第一个索引指定的元素的到最后一个索引之前的元素


print(numbers[0:3])返回0,1,2号索引对应的元素形成的列表


[1:4]1,2,3号索引对应的元素


[:3]从表头到2号索引对应的元素


[3:]从3号索引对应的元素到表尾


[-3:]倒数三个索引对应的元素

student_0=students_1会使得两个列表关联,而不是将后者的副本赋给前者,当修改其中一个时,另一个也会随之改变

要实现列表赋值给另一个列表,应该使用student_0=student_1[:]

5)元组

不可以改变的列表称之为元组


元组用括号定义dimensions=(200,150)


严格地说,元组是由逗号标识的,圆括号只是为了看起来更加的整洁,如果定义一个只包含一个元素的元组,必须在这个元素后面加上逗号如my_t=(50,)


不能修改元组的元素,但可以给存储元组的变量赋值,如dimensions=(200,50)是正确的,dimensions[1]=50是错的

6)设置代码格式

缩进:四个空格符

行长:代码79个字符,注释72个字符

4.If语句

1)条件测试

一般判断是否相等时区分大小写car="Audi",if(car=="audi")返回false


如果大小写无关紧要可以car="Audi",if(car.lower()=="audi")则会返回true


if(xx!=xxx):


xxxxxxxxxx


检查不相等


多个条件都满足:and


多个条件满足一个:or


判断值是否在列表里:in


判断值是否不在列表里:not in

2)if语句

if xxxx:
  xxxxx
elif xxx:
  xxxx
else:
    xxxx

3)使用if语句处理列表

if(students):#列表students里至少有一个元素
  for student in students:
    print(student)
  print("All Sign Up")
else:#列表里没有元素
  print("No Student")

4)设置if语句的格式

==,>=,<=,>,<左右加空格

5.字典

1)使用字典

字典是一系列键值对,每个键都与一个值相关联,可以使用键来访问相关联的值,用花括号表示一系列键值对

如alien_0={
 "color":green,
 "point":5,
 }
alien_0[color]访问字典中的值
alien_0[“x_position”]=0
alien_0[“y_position”]=25添加键值对
alien_0[“color”]=red修改字典中的值
del alien_0[color]删除键值对
字典中元素的排列顺序与添加顺序相同
alien_0.get(“point”,“No point value assigned”)第一个参数用于指定键,第二个参数为指定的键不存在时返回的值(默认返回None)

2)遍历字典

for key,value in alien_0.**item()**:#遍历所有键值对
  print(f"Key:{key}")
  print(f"Value:{value}")

for key in alien_0.keys():遍历所有键(也可以省略keys(),仍会自动遍历所有键如for key in alien_0:输出结果相同)


keys()并非只能用于遍历,实际上它将返回一个列表,其中包含列表里的所有键。


for name in sorted(favorate_languages.keys()):按指定顺序遍历字典中的所有键


for value in alien_0.values():遍历所有值,没有考虑重复


为剔除重复项,可以使用集合set,集合中的每个元素都是独一无二的。


for value in set(alien_0.value()):


languages={“python”,“c”,“python",c++"}利用花括号直接创建集合(无键值对)


print(languages)


–>{“c”“python”,“c++”}集合不同于列表和字典,不会以特定的顺序存储元素

3)嵌套

字典列表:alien_0={"color":"green","point":"5"}
alien_1={"color":"red","point":"5"};
alien_2={"color":"white","point":"5"}
aliens=[alien_0,alien_1,alien_2]
创建三十个白色五号大小的机器人存储进alien字典:
for alien in range(30):
 new_alien={"color":"white","point":"5"}
 aliens.append(new_alien)
修改前三个机器人的颜色:
for alien in aliens[:3]:
 alien["color"]="yellow"
在字典中存储列表:
字典中的某个键对应的值是由一个列表组成
favorite_languages={
 "jen":["python","c++"],
 "sarah":["c"],
 "phil":["python","go","ruby],
}
for name,languages in favorite_languages.items():
 print(f"\n{name.title()}'s favorite languages are:")
 for language in languages:
 print("\t"+language)
#在字典里存储字典
users = {
   "aeinstein": {
      "first": "albert",
      "last": "einstein",
      "location": "princeton",
   },
   "mcurie": {
      "first": "marie",
      "last": "curie",
      "location": "paris",
   },
}


相关文章
|
2月前
|
网络协议 Java Linux
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
本文介绍了PyAV库,它是FFmpeg的Python绑定,提供了底层库的全部功能和控制。文章详细讲解了PyAV的安装过程,包括在Windows、Linux和ARM平台上的安装步骤,以及安装中可能遇到的错误和解决方法。此外,还解释了时间戳的概念,包括RTP、NTP、PTS和DTS,并提供了Python代码示例,展示如何获取RTSP流中的各种时间戳。最后,文章还提供了一些附录,包括Python通过NTP同步获取时间的方法和使用PyAV访问网络视频流的技巧。
327 4
PyAV学习笔记(一):PyAV简介、安装、基础操作、python获取RTSP(海康)的各种时间戳(rtp、dts、pts)
|
2月前
|
Python
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
使用Python的socket库实现客户端到服务器端的图片传输,包括客户端和服务器端的代码实现,以及传输结果的展示。
152 3
Socket学习笔记(二):python通过socket实现客户端到服务器端的图片传输
|
2月前
|
JSON 数据格式 Python
Socket学习笔记(一):python通过socket实现客户端到服务器端的文件传输
本文介绍了如何使用Python的socket模块实现客户端到服务器端的文件传输,包括客户端发送文件信息和内容,服务器端接收并保存文件的完整过程。
168 1
Socket学习笔记(一):python通过socket实现客户端到服务器端的文件传输
|
2月前
|
关系型数据库 MySQL 数据库
Mysql学习笔记(四):Python与Mysql交互--实现增删改查
如何使用Python与MySQL数据库进行交互,实现增删改查等基本操作的教程。
69 1
|
2月前
|
Ubuntu Linux Python
Ubuntu学习笔记(六):ubuntu切换Anaconda和系统自带Python
本文介绍了在Ubuntu系统中切换Anaconda和系统自带Python的方法。方法1涉及编辑~/.bashrc和/etc/profile文件,更新Anaconda的路径。方法2提供了详细的步骤指导,帮助用户在Anaconda和系统自带Python之间进行切换。
101 1
|
2月前
|
索引 Python
Python学习笔记编程小哥令狐~持续更新、、、(上)
Python学习笔记编程小哥令狐~持续更新、、、(上)
51 2
|
2月前
|
存储 Python
Python学习笔记编程小哥令狐~持续更新、、、 (下)
Python学习笔记编程小哥令狐~持续更新、、、 (下)
34 1
|
2月前
|
存储 Python
【免费分享编程笔记】Python学习笔记(二)
【免费分享编程笔记】Python学习笔记(二)
44 0
【免费分享编程笔记】Python学习笔记(二)
|
2月前
|
Java 编译器 Go
Python学习笔记--- day01计算机基础和环境搭建(一)
Python学习笔记--- day01计算机基础和环境搭建(一)
43 2
|
2月前
|
程序员 编译器 Python
Python学习笔记--- day01计算机基础和环境搭建(二)
Python学习笔记--- day01计算机基础和环境搭建(二)
49 1