大学4年混在计算机科学与技术专业里,学校还凑凑合合,成绩马马虎虎。当时觉着IOS开发挣钱特别多,就学习了OC,励志要做个苹果开发攻城狮,后来毕业找了家国企待了差不多一年,感觉人生没有意义,于是接着考研,单科成绩差了2分与我的名校差之毫厘,无奈调剂了一所不太好的学校,读研一年,貌似忘掉了初心,跟着学了一年的课程,到头来还是什么也不会,简单的编程也不会我都不好意思说我科班出身的。今天压住我这颗焦躁的心,踏踏实实像学C语言一样开始我的Python之旅。希望大家可以跟着我的博客一起学习。第一次写博,有什么不当的地方希望大家多提出宝贵意见
学习资料:莫凡Python Python程序设计
学习语言: Python3.X
Python和其他语言一样有几大循环,这里我就简单过一下记一些要点:
1.while循环
while 条件:
(执行语句)
如果条件成立,则执行下边的语句,条件不成立,则跳出循环
2.for循环
for i in range(1,10,2) [1-9]没有到10 ,只进行到9,步长是2
print(i)
进行迭代
3.if语句
x = 1 y = 2 z =3
if x>y:
print("x is less than y")
如果条件是真的,则运行循环内的语句,如果条件不成立,则跳出if语句
(=是赋值号,!=是不等于号,== 是判断是等于号)
if condition:
true_expressions
else:
false_expressions
当 if
判断条件为 True
,执行 true_expressions
语句; 如果为 False
,将执行 else
的内部的 false_expressions
。
if condition1:
true1_expressions
elif condition2:
true2_expressions
elif condtion3:
true3_expressions
elif ...
...
else:
else_expressions
如果有多个判断条件,那可以通过 elif
语句添加多个判断条件,一旦某个条件为 True
,那么将执行对应的 expression
。 并在之代码执行完毕后跳出该 if-elif-else
语句块,往下执行。
5.def函数
def function_name(parameters):
expressions
Python 使用 def
开始函数定义,紧接着是函数名,括号内部为函数的参数,内部为函数的 具体功能实现代码,如果想要函数有返回值, 在 expressions
中的逻辑代码中用 return
返回。
定义好一个函数之后,可以打出函数名加括号内的参数,即可以调用函数
默认参数
def function_name(para_1,...,para_n=defau_n,..., para_m=defau_m):
expressions
函数声明只需要在需要默认参数的地方用 =
号给定即可, 但是要注意所有的默认参数都不能出现在非默认参数的前面。定义的时候应该将默认的参数放在未定义的参数后边。
6.全局与局部变量
APPLY = 100 # 全局变量
a = None
def fun():
global a # 使用之前在全局里定义的 a
a = 20 # 现在的 a 是全局变量了
return a+100
print(APPLE) # 100
print('a past:', a) # None
fun()
print('a now:', a) # 20
那如何在外部也能调用一个在局部里修改了的全局变量呢. 首先我们在外部定义一个全局变量 a=None
, 然后再 fun()
中声明 这个 a
是来自外部的 a
. 声明方式就是 global a
. 然后对这个外部的 a
修改后, 修改的效果会被施加到外部的 a
上. 所以我们将能看到运行完 fun()
, a
的值从 None
变成了 20
.
7.模块安装
pip3 install numpy
更新模块
pip3 install -u numpy
8.文件读取
text='This is my first test.\nThis is the second line.\nThis the third line'
print(text) # 输入换行命令\n,要注意斜杆的方向。注意换行的格式和c++一样
my_file=open('my file.txt','w') #用法: open('文件名','形式'), 其中形式有'w':write;'r':read.
my_file.write(text) #该语句会写入先前定义好的 text
my_file.close() #关闭文件
使用 open
能够打开一个文件, open
的第一个参数为文件名和路径 ‘my file.txt’, 第二个参数为将要以什么方式打开它, 比如 w
为可写方式. 如果计算机没有找到 ‘my file.txt’ 这个文件, w
方式能够创建一个新的文件, 并命名为 my file.txt
如果想追加内容,可以打开文件(注意打开方式为'a')将新的内容写进去即可my_file.write(append_text)
- 还有 append 的用法 :
open('my file.txt','a')
打开类型为a
,a
即表示 append
使用 file.read()
能够读取到文本的所有内容.
如果想在文本中一行行的读取文本, 可以使用 file.readline()
, file.readline()
读取的内容和你使用的次数有关, 使用第二次的时候, 读取到的是文本的第二行, 并可以以此类推:
如果想要读取所有行, 并可以使用像 for
一样的迭代器迭代这些行结果, 我们可以使用 file.readlines()
, 将每一行的结果存储在 list
中, 方便以后迭代.
file= open('my file.txt','r')
content=file.readlines() # python_list 形式
print(content)
""""
['This is my first test.\n', 'This is the second line.\n', 'This the third line.\n', 'This is appended file.']
""""
# 之后如果使用 for 来迭代输出:
for item in content:
print(item)
"""
This is my first test.
This is the second line.
This the third line.
This is appended file.
"""
9.类
class
定义一个类, 后面的类别首字母推荐以大写的形式定义,比如Calculator
. class
可以先定义自己的属性,比如该属性的名称可以写为 name='Good Calculator'
. class
后面还可以跟def
, 定义一个函数. 比如def add(self,x,y):
加法, 输出print(x+y)
. 其他的函数定义方法一样,注意这里的self
是默认值.
class Calculator: #首字母要大写,冒号不能缺
name='Good Calculator' #该行为class的属性
price=18
def add(self,x,y):
print(self.name)
result = x + y
print(result)
def minus(self,x,y):
result=x-y
print(result)
def times(self,x,y):
print(x*y)
def divide(self,x,y):
print(x/y)
""""
>>> cal=Calculator() #注意这里运行class的时候要加"()",否则调用下面函数的时候会出现错误,导致无法调用.
>>> cal.name
'Good Calculator'
>>> cal.price
18
>>> cal.add(10,20)
Good Calculator
30
>>> cal.minus(10,20)
-10
>>> cal.times(10,20)
200
>>> cal.divide(10,20)
0.5
>>>
""""
- 注意定义自变量
cal
等于Calculator
要加括号“()” ,cal=Calculator()
否则运行下面函数的时候会出现错误,导致无法调用.
初始化
__init__
可以理解成初始化class
的变量,取自英文中initial
最初的意思.可以在运行时,给初始值附值,
运行c=Calculator('bad calculator',18,17,16,15)
,然后调出每个初始值的值。看如下代码。
class Calculator:
name='good calculator'
price=18
def __init__(self,name,price,height,width,weight): # 注意,这里的下划线是双下划线
self.name=name
self.price=price
self.h=height
self.wi=width
self.we=weight
""""
>>> c=Calculator('bad calculator',18,17,16,15)
>>> c.name
'bad calculator'
>>> c.price
18
>>> c.h
17
>>> c.wi
16
>>> c.we
15
>>>
""""
如何设置属性的默认值, 直接在def
里输入即可,如下:
def __init__(self,name,price,height=10,width=14,weight=16):
查看运行结果, 三个有默认值的属性,可以直接输出默认值,这些默认值可以在code
中更改, 比如c.wi=17
再输出c.wi
就会把wi
属性值更改为17
.同理可推其他属性的更改方法。