《python编程从入门到实践》第一部分(基础语法)学习笔记

本文是《Python编程从入门到实践》第一部分的学习笔记,涵盖Python的基础语法,包括变量、简单数据类型(如字符串、数字)、列表、元组、字典的使用,以及if语句、用户输入、while循环、函数和类的基本概念。还介绍了文件读写和异常处理的基础知识。
摘要由CSDN通过智能技术生成

python编程从入门到实践

1.变量和简单数据类型

1.1 变量

跟其他语言差不过,直接赋值

注意命名细节

1.2 数据类型

1.2.1 字符串

可以是“ ” , 也能是‘ ’ ,可以更加灵活运用。

upper() :全部改为大写

lower():全部改为小写

title():首字母大写

合并:+

\n

rstrip() :删除右空格 lstrip():只删除左边 strip():两端

1.2.2 数字

** :乘方

str():转换为字符串

#:加注释

2.列表

用[ ]表示,类似于数组

2.1修改、添加、删除

append(): 在后面添加

insert(0," "):在0处插入

del a[0] :删除 (要知道索引)

pop(): 弹出最后一个元素,可获取

pop(0):弹出指定位置

remove(“abc”):删除指定的值

2.2 组织列表

sort():永久性排序 a.sort()

sorted():暂时排序 sorted(a)

reverse():反转列表顺序,倒过来

len():长度

2.3 操作列表

2.3.1 循环

for a in as :

缩进很重要

2.3.2 数值列表

range(1,6): 生成从1到6列表

range(1,12,3):间隔为3

创建数值列表:list(range(1,6))

min()

max()

sum()

切片:a[0:3]

复制列表:a=b[:]

2.4 元组

用()表示

元组中值不能改变但是可以给元组重新赋值

3.if 语句

1.使用循环:

for a in as:

...

2.if else 语句:

if: 要加冒号

elif:

else:

用 and or 连接

3.检查特定值是否 在列表中:‘ A’ in as

if a in as:

4.字典

4.1 基本用法

1.定义:a={‘color’:‘green’,sex:‘man’}

2.访问:a[‘color’]

3.添加:a[‘age’]=21 (不存在的元素)

4.修改:a[‘age’]=22 (已经存在的元素)

5.删除:del a[‘age’]

6.遍历:

for x, y in a.items(): items()返回键-值列表

for x in a.keys(): keys()返回键,所有键

for x in sorted(a.keys()): 顺序遍历keys,上面是乱序的

for y in a.values(): 遍历所有值

4.2字典嵌套

1.字典列表

a=[a1,a2,a3] 每个都是一个字典

range(30) 30个数

a.append(new_a) 在a里面加入新as

len(a) a的长度

2.在字典中存储列表

a={‘age’:[1,2,3,4]} 返回的是一个列表

3.在字典中存储字典

a={‘age’:{‘man’:21,‘woman’:22}} 返回的是字典

5.用户输入和while循环

5.1 用户输入

input () 输入的是字符串

int() 变为int类型

% 求模运算

5.2 while循环

while :

使用标志:立个flag

break 退出循环

continue 继续

用while循环移动字典:

unconfirmed_users=['a','b','c']
confirmed_users=[]
while unconfirmed_users:
    current_users=unconfirmed_users.pop()
    print("Verifying users: "+current_users.title())
    confirmed_users.append(current_users)

print("\nThis is confirmed users:")
for confirmed_users in confirmed_users:
    print(confirmed_users.title())

删除特定值:

while 'cat'  in pets:

	pets.remove('cat')

6.函数

6.1 定义函数

6.1.1 定义与调用
def greet_user():
    """显示简单的问候语"""
    print("hello!")

greet_user()

“”" 这是文档字符串,用来描述函数是做什么的 “”"

6.1.2 传递参数
def greet_user(usename):
    """显示简单的问候语"""
    print("hello "+usename)

greet_user('jihome')

6.2 传递实参

6.2.1 位置实参

按顺序定位的,参数的前后位置。

参数与的传递顺序很重要。

6.2.2 关键字实参

greet_user(usename=‘jihome’)

对每个形参指定特定的实参

6.2.3 默认值(缺省值)

def greet_user(usename=‘jihome’)

6.3 函数返回值

1.返回简单值
def get_name(xing,ming):
    """返回全名"""
    full_name=xing+' '+ming
    return full_name.title()

me=get_name('xu','jihong')
print(me)
2.返回字典
def get_name(xing,ming):
    """返回全名"""
    full_name={'xing':xing,'ming':ming}
    return full_name

me=get_name('xu','jihong')
print(me)
3.函数与while循环结合
4.可以给函数传递列表
5.传递任意数量的实参

用(*参数):参数里面是一个空元组

def study_language(*yuyan):
    """学习的语言"""
    print("\m这是你学习的语言:")
    for l in yuyan:
        print("-"+l)

study_language('Python')
study_language('Python','Java','C','C++','C#')
6.将函数存储在模块中

保存为.py文件

在另一个文件中import 就行 :import sl

导入特定函数:from sl import study_language

用as指定别名:from sl import study_language as s_l

导入所有函数:from sl import *

7.类

7.1 创建和使用

创建一个Dog()类:

class Dog():
    def __init__(self,name,age):
        """初始化函数"""
        self.name=name
        self.age=age
        self.master="John"  #类参数的默认值

    def sit(self):
        print(self.name.title()+"is sitting")

    def roll_over(self):
        print(self.name.title()+"is rolled over")

self :它是一个指向实例本身的引用,类似于this

–init–:初始化函数,相当于构造函数

使用和其他类似,用.调用

可以定义一个函数修改类里面的值:

def new_master(self,master):
    self.master=master

7.2 继承

7.2.1.一个小例子描述继承:
#car.py
class Car():#父类
    def __init__(self,make,model,year):
        self.make=make
        self.model=model
        self.year=year
        self.od_reading=0
        self.gas=100

    def description(self):#父类自己的方法
        print(self.make+"  "+self.model+"  "+self.year)

    def fill_gas(self):
        self.gas=100

class ECar(Car):#子类
    def __init__(self,make,model,year):
        super().__init__(make,model,year)  #初始化父类属性
        self.battery=100        #子类自己属性

    def ds_ba(self):
        print("The batterry is"+str(self.battery))

    def fill_gas(self):#重写父方法
        print("This car doesn't need gas")

mycar=Car('BMW','X5','2020')
mycar.description()
nextcar=ECar('TSL','Model3','2020')
nextcar.fill_gas()
7.2. 2.导入类

from car import Car,ECar #导入模块中的类

import car #导入整个模块

from car import * #导入模块中所有类

7.2.3.Python标准库

用import 来导入其他人写的类。

8.文件和异常

8.1 文件读取

8.1.1.在.py文件夹下添加一个.txt文件,打开文件
with open('pi.txt') as file_object:
    contents=file_object.read()
    print(contents.restrip())

with是在不再需要访问文件时close()掉,不用手动关闭

read():读取文件,在结尾加空行,可以用rstrip()去掉

逐行读取:

with open('pi.txt') as file_object:
    for line in file_object:
        print(line.rstrip())

读取每行并存进列表

lines=file_object.readline()

8.1.2.文件路径

Linux和OS中:/

Windows:\

file_path=‘C:\Users\pi.txt’

8.2 文件写入

写入文件

filename='Lover.txt'
with open(filename,'w') as file_object:
    file_object.write("I love Jowen\n")
    file_object.write("Jowen love John too\n")#两个就是多行

注:'w’是写入模式。其他的还有:

‘r’:读取(只读),默认的			‘a’:附加模式		‘r+’读取和写入

8.3 异常处理

使用try-except-else处理异常

a=float(input("请输入a:"))
b=float(input("请输入b:"))
try:
    answer=a/b
except ZeroDivisionError:
    print("You can't divide by zero!")
else:
    print(answer)

pass语句是跳过什么都不做

expect:pass

8.4 存储数据

8.4.1.用json.dump()存数据
#write.py
import  json
number=[2,3,5,7,11,13]
filename='numbers.json'
with open(filename,'w') as f_obj:
    json.dump(number,f_obj)
8.4.2.用json.load()访问数据
#read.py
import json
filename='numbers.json'
with open(filename) as f_obj:
    numbers=json.load(f_obj)

print(numbers)
8.4.3.一个综合应用的 小例子:
import json
filename='usenaem.json'
try:#如果存在这个文件,直接读入数据
    with open(filename) as f_obj:
        username=json.load(f_obj)
except:#否则创建一个文件存储用户名
    username=input("input your name:")
    with open(filename,'w') as f_obj:
        json.dump(username,f_obj)
        print("We'll remember you when you come back,"+username+"!")
else:#如果存在,输出欢迎回来
    print("Welcome back,"+username+"!")

9.测试代码

就是测试你写的东西是否正确

写在后面:

因为数值分析的需要,又重新好好学习下Python,用的是这个经典的《Python编程从入门到实践》,记的笔记比较简单,主要是联系其他语言来学习Python的,这些语言基础语法基本都是大同小异,关键是在于怎么运用,后面也会结合一些实例来分享我的学习。

第二次更新把这本书的所有基础部分更新完了,至此Python所有的基础语法部分全部解决,后面会结合实践项目来继续学习。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值