Python的基本语法

“有人说,写python就像是坐在一个没有安全带的车上,

我认为这个说法很欠妥当,

应该是一辆没有外壳和座椅,

只有发动机和轮子的车,

并且车上摆满了轮子”

python既然是作为一个工具,那么就不需要去深入理解底层和原理了,用一下午学习并且了解了基本操作和结构。能实现一些简单的交互和文件读取。文章将会根据几个部分来快速上手py

1.python概述

python(后面简称py),是一种解释形语言(interpret language),和早期版本的javascriot很相似(现在js已经进化到jit了)。这类语言的特点就是在编译的时候,是按行编译,编译一行执行一行,不会产生目标文件,轻量化是py最主要的特点。与此同时,py也是一种动态语言,不需要我们手动的声明变量

08年以后,官方更新了python3版本,3版本几乎不兼容2的代码,目前使用的版本仍然是3.x。相关的包管理工具pip也随之更新到了3,如果不是显着没事干,建议直接上3

如果有其他语言哪怕只有一点点基础,py上手也会很快。相比于java,cpp这些语言来说,py有很多不同,包亏:不依靠{}来区分代码,而是使用:和缩进来区分,不需要声明变量等等,下面会按照几个维度简单说明py的上手

1.5,py的安装和运行

window安装请按照其他网站或者ai提供的方法,这里只有python的安装

sudo apt-get update
sudo apt-get install python3

 检查版本

python3 --version

 编译执行

python3 文件名称

1.6,关于数据以及一些补充知识

这里默认你已经了解编程语言的一些共同性质,仅做一点补充

python中的数字全是浮点数

科学计数可以表示为 1e2 1e-2等等

运算符: /为浮点除 ,//为蒸熟除 **为次方

逻辑运算符用单词表达:and or not 而不是|| && !

2.一些需要用到的基础操作

很多语言的第一步都是写helloworld,py也不例外

print('hello')

恩,就这样,不用导入任何东西,就怎么一个函数,打印操作只需要调用print函数即可

其次,在写代码之前要知道注释怎么写,//在py中是整数除的意思

# py的第一种注解:单行
"""
py的第二种注解,多行注解
"""

在然后,是输入语句,数据语句和输出一样简单

#input语句
print('输出',input('输入'))

最后,是变量生命,和js还有go一样,完全不需要声明变量是什么类型的,因为python是一种动态语言

#py同样不需要声明变量,并且不需要我们区分声明和赋值的关系
x=1

3.流程控制

if match while for-in 四个就是了,学完流程控制,基础也就结束一半了吧(悲)

if语句,注意py中不使用大括号进行区分模块,而是使用缩进,每个单位的缩进大小为4个空格

并且else if被简写为elif

if x==3:

    print('我中了')

elif x==1:

    print('shudhdu')

else:

    print('你中了神魔')

while语句:没什么难的就是把括号变成缩进了

while False:

    print('jia')

for语句

for语句似乎和其他注重索引的不一样,更类似js中的for of循环,不注重索引
 

arr=[1,2,3,4,5,6]

for i in arr :

    print('内容为',i)

想见到索引,就要用range,range函数的功能是快速构建一个数字序列

for i in range(1,5):

    print('序列为',i)

#range函数用法很特殊,(a(optional),b,c(optional))三个参数

#a代表起点,b代表终点的下一位,c为遍历数目 其中a默认为0 c默认为b-a

#例如最常用的用法就是 i in range(5) 这样子便利结果为 0,1,2,3,4

想要正经模仿一下for,就可以联合以上两种方法外加一个len函数

for index in range(len(arr)):

    print(index,'位置的数字为',arr[index])

match语句。类似switch
 

match x:

    case 1:

        print('这是1')

    case _: #这个就是类似default的东西

        print('其他默认数值')

eval函数,作用就是把字符串转化为py语句并且进行执行

#可以执行语句,也可以转化变量

eval("print('heee')")

4.关于函数和模块

函数 开头是def

def method1():

    print('这是个函数')

    return 1 #返回值写在这里

method1()

还有一种很类似箭头函数的写法,lambda函数

arrow=lambda x,y:x+y

引入库使用的语句为 import

import pygame

安装库则要使用官方推荐的管理工具pip

pip3 install 

一个递归的实际应用

#递归举例,第n个非波拿起数字

def febonaqi(x):

if x==1 or x==2:

return 1

else:

return febonaqi(x-1)+febonaqi(x-2)

5.组合数据类型

组合数据,其实就是常说的容器

按照使用方法的不同,分为tuple,list,set,map(dict)四种

其实str也是一种组合数据类型,底层是一个很近似byte[]的东西,为什么要说近似。。。

因为python本体没有名叫array的东西

其特点和使用方法如下:

tuple:生成后就是固定的不可改变,创建方法为()

tup=(1,2,3,4,5,6,7,8)

print(tup[0]) #0

list,起到类似数组的作用,创建方法为 []

myList=[1,2,3,4,5,6,7]

print(myList[1])

myList.append(3)#末尾追加元素

set,集合就是集合啦,无序,不可重复 {}

mySet={1,2,3,4,5,6}

#可以用add remove等等方法

map指的是映射,而具体的数据结构指的是dict
 

myDict={"key":122,}

print(myDict['key'])

6.关于文件的操作

文件操作遵循一个原则“打开,操作,关闭”

文件的打开

file1=open('./mytxt',"r+")

第一个参数是文件的地址,第二个参数是操作类型,操作类型自行百度或者ai

文件的读入

文件读入的结果是字符串或者一个字节流,这取决与文件是文本还是二进制

读取全部内容

print('读取',file1.read())

读取固定长度

print(file1.read(5))

读取一行内容

print(file1.readline(1))

读取很多行,返回一个数组

lines=file1.readlines()

for i in range(len(lines)):

    print(i,'',lines[i])

ps.文件的读写好像在任何语言里面都有一个游标的机制

文件的写入

file1.write('ihefwq') 

参数是啥都行,末尾追加罢了

file1.writelines([11,22,33]) 

参数为list,但是如果想要换行要手动加上换行符号\n

文件的关闭

file1.close()

你可能感兴趣的:(机器学习,后端,python)