当前位置 : 主页 > 编程语言 > c语言 >

python笔记

来源:互联网 收集:自由互联 发布时间:2023-08-28
python笔记 python是一门很优雅的编程语言,它有应用范围广泛、开源、社区活跃、丰富的库、跨平台等等特点,容易上手 由于之前有了解过python的一些知识,所以在此跟随[Crossin的编程教

python笔记

python是一门很优雅的编程语言,它有应用范围广泛、开源、社区活跃、丰富的库、跨平台等等特点,容易上手

由于之前有了解过python的一些知识,所以在此跟随[Crossin的编程教室]学习直接作为复习笔记

初识python

[1]Print

与c语言不同,python中的打印就是英文单词print,而且使用print()就能将括号内的东西直接打印出来

比如
print("hello,world")
print(1)

这里注意,在print结束后光标会自动移动到下一行

然后要将不同数据打印到同一行时,可以使用+把它们连接起来,比如变量与字符串

print("ABC"+123)

[2]变量

Python的变量类型更为简单,它在使用时不需要复杂的声明,它的简单在这里就是一个很好的体现

直接a=123就好了
这里把python的数据类型表示方式举栗子
  • 字符串 : 表示一串字符,需要用''单引号或""双引号包围起来
  • 整数
  • 浮点数 : 就是小数
  • bool(布尔类型): 这个比较特殊,是用来表示逻辑上的“真”和“假”(或者说“是”和“非”)的一种类型,它只有两个值,True 和 False
a=1
print(a)
a='hello'
print(a)
看,不需要类型的转换,就是对变量直接赋值就可以使用,十分灵活

[3]input

既然有了输出,要进行所谓的“人机交互”,怎么能没有输入呢,所以在这里要学习到input
input可以直接读取接下来用户输入的指令

现在你就可以写一个问候的小程序

print("who are you?")
a=input()
print("hello "+a)

二.控制流语句

python控制语句与c语言逻辑基本一致,所以这里列出语法格式与一些说明

[1]if

if 条件:

   执行的语句
elif 条件:
   执行的语句
else :
   执行的语句

简单易懂,若满足条件,执行即可

[2]while

while 条件:
    循环执行的语句

同,若符合条件则循环执行

[3]for

python的for语句与c语言还不太一样,python的for有着更多的应用方式

例如

for i in range(1, 101):
   print(i)

这是for in 语句,将in后的序列依次赋值给in前的变量

这里解释下range()的作用,range(1,101)为1到100的一个序列,此外,可以直接用range(101)来表示从0到100的序列 以上的程序就是将1到100的值一依次赋值给i,然后将每一次赋值的语句打印出来

当然不只是range组成的数字序列,字符串以及后面学到的列表都可以用来遍历

[4]示例

<附加>random模块 我们可以用randint方法用来生成随机数使用方法也很简单,如下
from random import randint
num = randint(1, 100)
这样就将1到100的随机数给了num
然后我们就可以进行一个简单的猜数字小游戏了,这也是当初我学习编程的第一个完整的程序
from random import randint
num=randint(1,100)
anwser=0
while anwser!=num:
    anwser=int(input())
    if anwser>num:
        print("too big")
    if anwser<num:
        print("too small")
if anwser==num:
        print("bingo")
print("you are nb man")
这样的一个小程序当初很大的激发了我学习编程的兴趣

三.list

[1]初探list

list即为列表,列表的作用很大,它与c语言中的数组很像,但又在很多地方要远远优于数组,数组只能储存一类数据,而list可以同时储存多种类型的数据,之前用到过的range(1,101)就是创建立一个数组的函数
我们也可以创建自己的列表,例如
l1 = [1, 1, 2, 3, 5, 8, 13]
l2 = ['meat', 'egg', 'fish', 'milk']
l3 = [365, 'everyday', 0.618, True]
就这样,我们创建了自己的数组

[2]访问list

list创建后,肯定是要访问,跟数组相同,list的访问也是使用数组名加[下标]的方式来代表list中的元素,比如l1[0]代表的就是1,要改变list中的元素,直接对其赋值即可,此外,list存在倒序访问,如l2[-1]代表的元素即为数组中倒数第1个元素'milk'
list有一个append方法,可以增加元素,调用的方法是:l2.append('chiken'),使用这个方法就在list的末尾增加了新的元素
同样,有增加就有删除,del l1[0],使用这个方法就能删除指定的list中的元素,del l2[start : end]这样就可以删除指定范围的元素了
采用len(数组名)就能获取数组的长度
注: 如果不指定第一个数,切片就从列表第一个元素开始。 如果不指定第二个数,就一直到最后一个元素结束。 都不指定,则返回整个列表。

[3]字符串分割

在python中,字符串可以进行分割,分割后的字符串被分为好几个小的部分,并成为列表的元素
通过split()就能实现上述操作
sentence = 'I am an English sentence'
l1=sentence.split()
通过这样就能得到一个新的列表l1=['I', 'am', 'an', 'English', 'sentence']

除了空格外,split()同时也会按照换行符\n,制表符\t进行分割。所以应该说,split默认是按照空白字符进行分割。 当然也可以根据其他字符进行分割,在括号内指定即可

[4]连接list

有了分割,当然也要有连接,join方法就能将list连接在一起

s = ';'
li = ['apple', 'pear', 'orange']
fruit = s.join(li)
print (fruit)

join方法的参数就是要连接的字符,通过join方法,就能得到一个字符串

[5]list方法在字符串中的应用

<1>遍历

通过for方法可以遍历字符串中的每一个字符5

<2>索引

通过字符串加索引的方法可以访问字符串中的每一个字符,但不能通过对其赋值而改变字符串

<3>切片

通过与list相同的截取方法可以截取到字符串的片段

<4>连接

join方法同样可以对字符串进行使用,能够将字符串中的字符通过指定字符重新连接成一个新的字符串

[6]列表解析

通过此方法可以更为方便的进行列表相关操作,十分便捷
list_1 = [1, 2, 3, 5, 8, 13, 22]
list_2 = []
for i in list_1:
    if i % 2 == 0:
        list_2.append(i)
print (list_2)

要实现此功能就可以用这个方法

list_1 = [1, 2, 3, 5, 8, 13, 22]
list_2 = [i for i in list_1 if i % 2 == 0]
print (list_2)

四.文件操作

[1]读文件

f = open('data.txt')
data = f.read()
print (data)
f.close()

如同c语言,对于文件的打开方式方法一致,但更为简洁,通过f.read可以读取文件中的所有内容 此外readline() 可以用来读取一行内容 readlines() 可以把内容按行读取至一个list中

[2]写文件

python默认是以只读模式打开文件。如果想要写入内容,在打开文件的时候需要指定打开模式为写入:

这些模式也跟c语言一样,如w就是write模式,就可以写入文件(覆盖原有内容)

f = open('output.txt', 'w')
f.write('a string you want to write')

还有一种常用模式是'a',appending。它也是一种写入模式,但你写入的内容不会覆盖之前的内容,而是添加到原有文件内容后面。

五.字典

字典是一种数据类型,它在c中并没有,正如其名,像字典一样,它能将一个变量与另一个变量连接

d = {key1 : value1, key2 : value2}

key叫做键,这里要注意 1.键必须是唯一的; 2.键只能是简单对象,比如字符串、整数、浮点数、bool值。

python字典中的键/值对没有顺序,我们无法用索引访问字典中的某一项,而是要用键来访问。例如d[key1]

这种独特的数据类型能够很方便的一对一进行索引,很方便的一点是,如果用get方法来访问对应的key值不出存在,d.get(key4)则返回值为none

六.模块

python自带了功能丰富的标准库,另外还有数量庞大的各种第三方库。使用这些“巨人的”代码,可以让开发事半功倍,就像用积木一样拼出你要的程序。
使用import语句就可以调用模块,只需要加上要调用的模块名即可,如import random,然后便可以使用random中的方法 但是如果仅仅使用函数中的某个函数或者变量,可以直接使用from...import...指明,如from random import randint
为了便于理解和避免冲突,你还可以给引入的方法换个名字:例如: from math import pi as math_pi

七.类与对象

Python是一门面对对象编程的语言,截至目前为止我们还感受不到它与c在编程思路的区别,通过对于类的学习,你将会正式开始踏入面对对象编程的乐趣

类是一个独立存放变量(属性/方法)的空间。

属性:变量在类中称为属性,但是类中的属性不仅仅只包含变量,函数等其他的对象也可以作为类的属性

新建一个对象的过程就叫做实例化。而对象是这个类的实例

实例也是一个独立存放变量的空间,每个实例都是一个独立的变量空间。不同的实例之间的空间互相不可见。

类的继承 类的继承是一个非常实用的功能,是面向对象编程最重要的特征之一


上一篇:rtklib程序说明
下一篇:没有了
网友评论