python笔记1

1. 第一个程序:helloworld

Windows python交互器实现:

Linux python交互器实现:

./hello.py  要加可执行权限

chmod +x hello.py

./hello.py运行发现提示语法错误,原因:没有告诉系统用什么语法实现

Pycharm实现:

print ("hello world")   ###3.0写法

print"hello world"  ###2.7写法

运行测试:

2.变量与赋值

案例1:

分析:从中可以看出name和“=”之间可以有空格,也可以没有空格。

分析:这样写报语法错误,从中可以看出表示一个字符串需要加引号。

分析:这样写报变量AndyH没有被赋值,从中可以看出AndyH被作为一个变量来看待。

案例2:

分析:从中可以看出2.x和3.x的print区别,其中2.7兼容2.x和3.x的命令。

分析:

查看a,b内存地址

分析:可以看出a和b储存在内存里的值发生了变化。

变量起名规则:

1.显示,通俗易懂

2.nums_of_aliex_gf

3.NumsOfAliexGf  驼峰写法。

4.数字不能开头,可以在中间或者结尾,如na5me。

5.特殊字符不能有,如!@¥。除#以外,表示单行注释。

6.不能有空格。

7.关键字不能声明为变量名,如and,as,assert,break等。

错误示范:

1.  .name-of-aliex-gf     编程语言中的“-”代表减号

2.  5name

3. name of teacher

4. print

6. !name

3.用户交互

案例1:

分析2.0和3.0的input变量区别

4.条件判断与缩进

4.1 IF...ELSE条件语句

案例1:

运行会报错,缩进错误,同一级别的缩进要保持一致

python通过缩进来判断作用域,所以强制缩进,官方推荐缩进4格,pycharm中按Tab默认就是缩进4格。

案例2:猜luckynumber

假设lucky number =6

·猜的数字比6大,提示说你打印小一点

·猜的数字比6小,提示说你打印大一点

·猜的数字等于6,提示binggo

2.x写法:

lcynum = 6        ###给lucky number赋值
input_num = input ("inputlucky number:")    ###定义输入内容变量,3.0需要加int

if input_num == lcynum:     ###如果输入值等于lcynum
print ("bingo")       ###则打印binggo
elif input_num > lcynum:   ###如果输入值大于lcynum
print ("pleaseprint smaller")     ###则打印please print smaller
else:           ###否则其他情况(也就是小于lcynum)
print ("pleaseprint bigger")   ###则打印please print bigger

3.x写法,注意int函数:

lcynum = 6        ###给lucky number赋值
input_num = int(input ("inputlucky number:"))    ###定义输入内容变量,3.0需要加int

if input_num == lcynum:     ###如果输入值等于lcynum
print ("bingo")       ###则打印binggo
elif input_num > lcynum:   ###如果输入值大于lcynum
print ("pleaseprint smaller")     ###则打印please print smaller
else:           ###否则其他情况(也就是小于lcynum)
print ("pleaseprint bigger")   ###则打印please print bigger

运行结果

小于6情况:

大于6:

等于6:

5.循环控制

案例1:猜lucky number扩展:无限次数限制,输出一次重新再提示输入

5.1 while  循环语句

lcynum = 6        ###给lucky number赋值

whileTrue:       ###循环语句
input_num= int(input ("input lucky number:"))    ###定义输入内容变量,3.0需要加int

if input_num == lcynum:     ###如果输入值等于lcynum
print("bingo")        ###则打印binggo
elif input_num > lcynum:   ###如果输入值大于lcynum
print("please printsmaller")     ###则打印please print smaller
else:            ###否则其他情况(也就是小于lcynum)
print("please printbigger")   ###则打印please print bigger

运行结果:无限循环输入

案例2:无限循环,当输入正确结果之后,结束循环,break

运行结果:输入正确结果之后停止循环

案例3:不使用True

lcynum = 6        ###给lucky number赋值

while input_num != lcynum:       ###循环语句,当input_num不等于lcymum的时候循环
input_num = int(input ("inputlucky number:"))    ###定义输入内容变量,3.0需要加int

if input_num == lcynum:     ###如果输入值等于lcynum
print ("bingo")       ###则打印binggo
elif input_num > lcynum:   ###如果输入值大于lcynum
print ("pleaseprint smaller")     ###则打印please print smaller
else:           ###否则其他情况(也就是小于lcynum)
print ("pleaseprint bigger")   ###则打印please print bigger

运行结果:

报错,input_num没有被定义。

分析:虽然下面已经定义了input_num,但还是报错,说明python是从上往下执行的,所以第一次出现的input_num变量没有声明。所以可以先给它定义一个初始值。

修改如下:

lcynum = 6        ###给lucky number赋值
input_num = -1     ###定义一个初始值

while input_num != lcynum:       ###循环语句,当input_num不等于lcymum的时候循环
input_num = int(input ("inputlucky number:"))    ###定义输入内容变量,3.0需要加int

if input_num == lcynum:     ###如果输入值等于lcynum
print ("bingo")       ###则打印binggo
elif input_num > lcynum:   ###如果输入值大于lcynum
print ("pleaseprint smaller")     ###则打印please print smaller
else:           ###否则其他情况(也就是小于lcynum)
print ("pleaseprint bigger")   ###则打印please print bigger

运行结果:

案例4:优化脚本,下图标识部分表示变量已经判断了两次,重复判断了,继续优化

修改如下:

lcynum = 6        ###给lucky number赋值
input_num = -1     ###定义一个初始值

while input_num != lcynum:       ###循环语句,当input_num不等于lcymum的时候循环
input_num = int(input ("inputlucky number:"))    ###定义输入内容变量,3.0需要加int

#if input_num == lcynum:     ###如果输入值等于lcynum
        #print ("bingo")        ###则打印binggo
if input_num > lcynum:   ###如果输入值大于lcynum
print ("pleaseprint smaller")     ###则打印please print smaller
    #else:            ###否则其他情况(也就是小于lcynum)
elif input_num < lcynum:    ###如果输入值小于lcynum
print ("pleaseprint bigger")   ###则打印please print bigger

print ("bingo")

验证结果:

案例5:lucky number次数限制,3次猜不中结束或者猜中结束

lcynum = 6        ###给lucky number赋值
input_num = -1     ###定义一个初始值
guess_count = 0    ###定义猜测次数的初始值

while guess_count <3:
    input_num = int(input ("inputlucky number:"))    ###定义输入内容变量,3.0需要加int
if input_num > lcynum:   ###如果输入值大于lcynum
print ("pleaseprint smaller")     ###则打印please print smaller
elif input_num < lcynum:    ###如果输入值小于lcynum
print ("pleaseprint bigger")   ###则打印please print bigger
else:
print ("bingo")
break
guess_count += 1                  ###每循环一次+1,和上面语法实现效果一致
else:    ####当上面的条件不满足(即循环结束)
print ("toomany retrys !")

测试结果:

5.2 for循环语句

lcynum = 6        ###给lucky number赋值
input_num = -1     ###定义一个初始值

for i in range(3):
    input_num = int(input ("inputlucky number:"))    ###定义输入内容变量,3.0需要加int
if input_num > lcynum:   ###如果输入值大于lcynum
print ("pleaseprint smaller")     ###则打印please print smaller
elif input_num < lcynum:    ###如果输入值小于lcynum
print ("pleaseprint bigger")   ###则打印please print bigger
else:
print ("bingo")
break
else
:    ####当上面的条件不满足(即循环结束)
print ("toomany retrys !")

6.常用数据类型

字符串格式化

案例1:“+”串联字符串

name = input("name:")
age = input("age:")
job = input("job:")

print("Infomationof []:" + name + "\nName:[]" +name +"\nAge:[]"+ age + "\nJob:[]" +job)

运行结果:

案例2:"%"运用

name = input("name:")
age = input("age:")
job = input("job:")

print("Informationof []:" + name + "\nName:[]"+name +"\nAge:[]" + age + "\nJob:[]" +job)

print("Informationof %s:\nName:%s\nAge:%s\nJob:%s" %(name,name,age,job))

运行结果:

案例3:"""or ‘‘‘运用(一般都用‘‘‘)

name = input("name:")
age = input("age:")
job = input("job:")


msg = ‘‘‘
Information of %s
    Name:%s
    Age:%s
    Job:%s
‘‘‘
%(name,name,age,job)
print (msg)

测试结果:

注意:除了%s之外还有%d和%f,

%d代表数字
%#f代表浮点

案例4:strip应用

name = input("name:").strip()
age = input("age:")
job = input("job:").strip()

msg = ‘‘‘
Information of %s
    Name:%s
    Age:%s
    Job:%s
‘‘‘
%(name,name,age,job)
print (msg)

测试结果:

案例5:

name = input("name:").strip()
age = int(input("age:"))
job = input("job:").strip()

msg = ‘‘‘
Information of %s
    Name:%s
    Age:%s
    Job:%s
‘‘‘
%(name,name,age,job)
print (msg)

测试结果:发现加了int语句后,age空格也自动去掉了,不需要strip

案例6:strip去关键字符

name = input("name:").strip("T")
age = int(input("age:"))
job = input("job:").strip()

msg = ‘‘‘
Information of %s
    Name:%s
    Age:%s
    Job:%s
‘‘‘
%(name,name,age,job)
print (msg)

测试结果:去掉了T

7. 列表常用操作

作用:在一个变量里存多个信息

索引

切片

追加

删除

长度

循环

包含

dir(name_list)

8.元组

t = (1,2,3,4)

dir(t)

只有count、index功能

把列表和元组转换

8.文件操作

file obj = file("文件路径","模式")   ###3.0没有file

file obj = open(“file”,"模式")

时间: 2024-10-12 00:49:31

python笔记1的相关文章

Python笔记_01列表 和元祖

Python笔记 第一章 列表和元祖 1.通用序列操作 所有序列都可以进行某些特定操作,包括:索引(indexing).分片(slicing).加(adding).乘(multiplying)以及检查某元素是否属于列表成员. 迭代:依次对序列中的每个元素重复执行某些操作. 序列的索引:通过元素在列表中的位置可以定位到该元素,这就是列表的索引,使用类似于list[0]对元素进行索引,索引0指向第一个元素.也可使用负数对元素进行索引,使用负数对元素索引时,列表中的最后一个元素由-1表示,例如list

玩蛇(Python)笔记之基础Part3

玩蛇(Python)笔记之基础Part1 一.集合 1.set 无序,不重复序列 {}创建,直接写元素 2.set功能 __init__()构造方法,,使用强制转换就会调用此方法 1 set1 = {'year', 'jiujiujiu'} 2 print(type(set1)) 3 # 创建集合 4 s = set() # 创建空集合 5 li = [11, 22, 11, 22] 6 s = set(li) set 3.集合的基本操作 1 # 操作集合 2 s1 = set() 3 s1.a

Python笔记(四)

在<Python笔记(三)>中,我记录关于Python中序列问题的知识.个人觉得确实比Java中的集合框架简单.之前也说了,Python是一种高级面向对象的语言,它的每一个变量都称为对象.今天我接触了面向对象的编程.下面是这篇博客的目录: 1.类与对象 2.输入输出 3.异常 类与对象: 我们都知道面向对象的语言具备四个特性:抽象,继承,封装,多态.Java,C++是这样,Python也不例外.在Python中,我们定义一个类,使用关键字class.形式如下:class classname:.

python笔记 - day7-1 之面向对象编程

python笔记 - day7-1 之面向对象编程 什么时候用面向对象: 多个函数的参数相同: 当某一些函数具有相同参数时,可以使用面向对象的方式,将参数值一次性的封装到对象,以后去对象中取值即可: sele是什么? self是一个python自动会给传值得参数: 哪个对象执行方法,self就是哪个对象: 构造方法: 类中有一个特殊的方法,__init__,类()自动执行: 面向对象,三大特性: 封装,继承,多态:  

Python笔记之不可不练

如果您已经有了一定的Python编程基础,那么本文就是为您的编程能力锦上添花,如果您刚刚开始对Python有一点点兴趣,不怕,Python的重点基础知识已经总结在博文<Python笔记之不可不知>中,尽管本文是自己学习Python过程中的总结,在大神看来,或许略欠火候,希望批评指正,万分感谢! 本文是作者学习成绩的见证,请尊重劳动成果!版权归作者和博客园共有,欢迎转载,但请保留本文出处http://www.cnblogs.com/itred/p/4687287.html ,  作者:itRed

python笔记之列表和元组

pyhton的列表和元组,说白了其实就是一种数据结构,只是在python当中更加方便的去操作而已.. 1.序列 其实字符串就是采取序列的方式的: string = "hello" print string[0] 结果为:h 对比其他编程语言,python还有一个负值索引的概念: 序列的分片: first = [0,1,2,3,4,5,6,7,9] print first[1:6:2] 针对first[1:6:2]这条语句: 1代表的起始索引,不写,默认为0 6代表结束索引,不写默认为所

整理python笔记

1.python笔记:while.if.for.编码 2.  模拟登陆 3.  python笔记:字符.列表.字典.元祖.数据类型

玩蛇(Python)笔记之基础Part2

玩蛇(Python)笔记之基础Part2 一.列表 1.列表 别的语言叫数组 python牛逼非要取个不一样的名字 1 age = 23 2 name = ["biubiubiu", "jiujiujiu", 22, age] 3 # namecopy = name 4 # namecopy.pop() 5 print(name) 6 # print(namecopy) List 2.列表取值 正常index 从零开始,,取倒数加负号 倒数第一就是[-1] 3.列表

python笔记 - day8

python笔记 - day8 参考: http://www.cnblogs.com/wupeiqi/p/4766801.html http://www.cnblogs.com/wupeiqi/articles/5017742.html 大纲 面向对象三大特性之多态 类成员之静态字段和普通字段 类成员之普通方法和静态方法以及类方法 类成员之属性 类成员之成员修饰符 类成员之特殊成员 其他之isinstance和issubclass 其他之super的应用 实例之自定义有序字典 单例模式 基本异常

python笔记 - day4-之装饰器

             python笔记 - day4-之装饰器 需求: 给f1~f100增加个log: def outer(): #定义增加的log print("log") def f1(): outer() #分别调用函数 print("F1") def f2(): outer() #分别调用函数 print("F2") def f100(): outer() #分别调用函数 print("F100") f1() f2