pyhton学习笔记一

什么是python?
  python是一种面向对象、解释型的计算机语言,它的特点是语法简洁、优雅、简单易学。

编译型语言:

  写好代码之后把代码编译成二进制文件,运行时运行编译好的二进制文件。比如C、C++、C#,运行速度快,但编译过程慢。

解释型语言:

  运行一行代码编译一行,什么时候运行代码,什么时候编译。比如,php、pyhton、ruby、java、go、JavaScript,运行速度较慢,性能差一些。

  Java虽然编译成calss文件,但不是二进制的,在jvm中运行

脚本语言:

  功能单一的语言。比如shell、vb、javascript、html、bat

一、变量

  python中定义变量很简单,一个等号就搞定,不需要指定数据类型。python变量里面存的是内存地址。

变量的定义规则:
  变量名要见名知意。
  变量名只能是 字母、数字或下划线的任意组合
  变量名的第一个字符不能是数字

以下关键字不能声明为变量名: 

[‘and‘, ‘as‘, ‘assert‘, ‘break‘, ‘class‘, ‘continue‘, ‘def‘, ‘del‘, ‘elif‘, ‘else‘, ‘except‘, ‘exec‘, ‘finally‘, ‘for‘, ‘from‘, ‘global‘, ‘if‘, ‘import‘, ‘in‘, ‘is‘, ‘lambda‘, ‘not‘, ‘or‘, ‘pass‘, ‘print‘, ‘raise‘, ‘return‘,‘try‘, ‘while‘, ‘with‘, ‘yield‘]

python中的单引号、双引号:
  字符串都用引号引起来,单引号和双引号没有区别,如果字符串里面包含单引号的话,外面就用双引号,里面有双引号的话,外面就用单引号

  单行注释,使用#

python中的三引号:

  多行注释

  定义多行的字符串,保持原有的格式

二、输入、输出

接收输入:

age = input(‘请输入年龄:‘)  #input接收输入的值都是string类型的
age = int(age)  #字符串类型转换成整型
today = str(num) #整型、日期类型等转换成字符串型

  raw_input()   #python2中使用的方法

输出: 

print(age)

三、条件判断

if 条件:
    xxx
else:
    xxx

多条件判断:

score = input(‘请输入score:‘)
score = int(score)   #input接收的输入是字符串,此处需要转换成int型

if score>=90:
    print(‘优秀‘)
elif score>=75 and score <90:
    print(‘良好‘)
elif score>=60 and score<75:
    print(‘合格‘)
else:
    print(‘不合格‘)

“or” 的使用:

  if sex==’男’ or sex == ‘xx’:

“!=”的使用:

  if sex!==’xx’ and/or xxx

四、循环(迭代、遍历):

while循环:while循环必须有一个计数器,每次循环计算器+1

count = 0
while count<10:
    print(‘Hello world!‘)  #循环时重复执行循环体中的语句
    count = count + 1
else:   #与while想对应的else,循环正常结束后才会执行它(前面有break,就不会执行)
    xxx

for循环 :不需要定义计算器,每次循环,自动+1(for循环不能写出死循环)

for i in range(3):  #循环3次
    print(i)
    print(‘hello h‘)
else:
    print(‘正常循环后执行‘) 

break和continue,都只能用在循环里面,它们有以下区别:

  break:立即结束循环,不管循环有没有循环完

  continue:结束本次循环,进行开启下一次循环(执行continue,它后面的代码就永远执行不到)

#while和for循环最后的else,如果前面有break就不算正常循环完,就不会执行else中的语句

五、小练习

写个猜数字的小游戏,要求:

产生一个随机数字,1-100之间,接收用户输入;

如果猜对了,游戏结束;如果猜大了,提示猜大了;如果猜小了,提示猜小了;

错误次数限制3次。

产生随机数模块使用random.randint(1,101),是一个标准包,导入即可。

import random
num = random.randint(1,10)
#print(num)
count = 0
while count<3:
    guess = input("请输入数字:")
    guess = int(guess)   #转换成int类型
    if guess<num:
        print("小了小了")
    elif guess>num:
        print("大了大了")
    else:
        print("恭喜猜对了")
        break     #break立即结束循环,不管循环有没有循环完
    count = count + 1   #或者写成:count += 1
else:  #三次循环结束执行else,如果是前面是break,就不执行此else
    print("游戏次数已经用完了。")

六、range的使用:

for i in range(101):
    if i%2 == 0:
    print(i)

七、字符串格式化:

占位符:%s -字符串,%d -整数 ,%.2f -float(自动四舍五入)

import datetime
today = datetime.date.today()
username = input("请输入用户名:")
#welcome = "欢迎光临:" + username    #第一种方式:字符串连接,不推荐
#welcome = "欢迎光临:%s" %username   #使用占位符格式化字符串
welcome = "欢迎光临:%s,今天是:%s" %(username, today)  #多个占位符
print(welcome)

八、练习

使用while循环:

#1、登录 username、passwd
    #输入用户和密码输入正确的话,提示:xxx,欢迎登录,今天的日期是xxx,程序结束
    #输入错误的话,提示“账号/密码输入错误”
# 2、最多输入错误3次,输入错误超过3次,提示错误次数过多    #循环
# 3、账号密码,要校验输入为空的情况,

import datetime

uname = ‘test‘
pwd = ‘123456‘
today = datetime.date.today()   #获取今天的日期

count = 0
while count<3:
    username = input("请输入用户名:").strip()   #strip()去掉空格
    passwd = input("请输入密码:").strip()
    if len(username)==0 or len(passwd)==0:
    #if username==‘‘ or passwd==‘‘:   #或者为空
        print("账号或密码不能为空,请重新输入")
        #continue
    elif username==uname and passwd==pwd:
        print("%s,欢迎登录,今天的日期是:%s" % (username,today))
        break
    else:
        print("账号或密码输入错误!")
    count += 1

else:
    print("输入错误超过3次,错误次数过多!")   #循环正常结束,使用else

使用for循环:

import datetime

uname = ‘test‘
pwd = ‘123456‘
today = datetime.date.today()   #获取今天的日期

for i in range(3):
    username = input("请输入用户名:").strip()   #strip()去掉空格
    passwd = input("请输入密码:").strip()
    if len(username)==0 or len(passwd)==0:
    #if username==‘‘ or passwd==‘‘:   #或者为空
        print("账号或密码不能为空,请重新输入")
    elif username==uname and passwd==pwd:
        print("%s,欢迎登录,今天的日期是:%s" % (username,today))
        break
    else:
        print("账号或密码输入错误!")
else:
    print("输入错误超过3次,错误次数过多!")   #循环正常结束,使用else

原文地址:https://www.cnblogs.com/chenhongl/p/8729354.html

时间: 2024-11-18 23:35:06

pyhton学习笔记一的相关文章

Pyhton学习笔记

def是将一个函数对象和一个变量关联起来,这样使用 变量名() 就可以调用该函数,而lambda定义函数,直接返回的函数对象. 变量的作用域:变量分为函数内的变量(本地变量),模块的变量(全局变量),built_in变量(整个Pyhton语言事先定义好的变量,如 for.list),其作用域依次由小增大. 在引用一个变量时会优先从小作用域中去找这个变量的值,若没有,则回去更大的作用域寻找. 一个函数可传入的参数如下所示, 1.x 为指定参数,参数的数量必须传入的实参保持一致, 2.x = 10

pyhton学习笔记5:常用模块:datatime,random,json,re

一.模块基础: 1.  定义 能够实现某个功能的代码集合(本质是py文件)  test.p的模块名是test包的定义:用来从逻辑上组织模块,本质就是一个目录(必须带有一个__init__.py文件) 2. 导入方法: import module import module1,module2 from module import * from module import m1,m2,m3 from module import logger as module_logger 3.import 本质

Pyhton 学习笔记1

格式化 最后一个常见的问题是如何输出格式化的字符串.我们经常会输出类似'亲爱的xxx你好!你xx月的话费是xx,余额是xx'之类的字符串,而xxx的内容都是根据变量变化的,所以,需要一种简便的格式化字符串的方式. 在Python中,采用的格式化方式和C语言是一致的,用%实现,举例如下: >>> 'Hello, %s' % 'world' 'Hello, world' >>> 'Hi, %s, you have $%d.' % ('Michael', 1000000) '

pyhton学习笔记三重引号编写多行字符串块

1.mantra = """ ... on le in fial ... the same is one too one ... side of life . """ 输出mantra '\non le in fial\nthe same is one too one\nside of life . ' print mantra on le in fial the same is one too one side of life .

OpenCV之Python学习笔记

OpenCV之Python学习笔记 直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看 到一本国外的新书<OpenCV Computer Vision with Python>,于是就看一遍,顺便把自己掌握的东西整合一下,写成学习笔记了.更需要的朋友参考. 阅读须知: 本文不是纯粹的译文,只是比较贴近原文的笔记:         请设法购买到出版社出版的书,支持正版. 从书名就能看出来本书是介绍在Pytho

vector 学习笔记

vector 使用练习: /**************************************** * File Name: vector.cpp * Author: sky0917 * Created Time: 2014年04月27日 11:07:33 ****************************************/ #include <iostream> #include <vector> using namespace std; int main

Caliburn.Micro学习笔记(一)----引导类和命名匹配规则

Caliburn.Micro学习笔记(一)----引导类和命名匹配规则 用了几天时间看了一下开源框架Caliburn.Micro 这是他源码的地址http://caliburnmicro.codeplex.com/ 文档也写的很详细,自己在看它的文档和代码时写了一些demo和笔记,还有它实现的原理记录一下 学习Caliburn.Micro要有MEF和MVVM的基础 先说一下他的命名规则和引导类 以后我会把Caliburn.Micro的 Actions IResult,IHandle ICondu

jQuery学习笔记(一):入门

jQuery学习笔记(一):入门 一.JQuery是什么 JQuery是什么?始终是萦绕在我心中的一个问题: 借鉴网上同学们的总结,可以从以下几个方面观察. 不使用JQuery时获取DOM文本的操作如下: 1 document.getElementById('info').value = 'Hello World!'; 使用JQuery时获取DOM文本操作如下: 1 $('#info').val('Hello World!'); 嗯,可以看出,使用JQuery的优势之一是可以使代码更加简练,使开

[原创]java WEB学习笔记93:Hibernate学习之路---Hibernate 缓存介绍,缓存级别,使用二级缓存的情况,二级缓存的架构集合缓存,二级缓存的并发策略,实现步骤,集合缓存,查询缓存,时间戳缓存

本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 -----------------------------------------------------------------------------------------------------------------