python学习笔记(一)-基础知识
O、解释型语言和编译型语言
编译型语言就是先把写好的程序翻译成计算机语言然后执行,就是所谓的一次编译到处运行,比如c、c++就是编译型语言,这样的语言特点是运行速度快,但是需要事先把程序编译好才可以。
解释型语言就是程序在运行的时候,通过一个解释器,把代码一句一句的翻译成计算机语言然后运行,也就是你写好代码之后直接就能运行,比如说python、shell、ruby、java、perl等等都是解释型语言,当然这样的语言由于原理不一样,执行速度并没有编译型语言快。
脚本语言就是指这个语言只有一个单一的功能。比如:shell、js。
一、运行 hello_world.py 时发生的情况
print("Hello world!")
运行文件上述代码时,末尾的.py指出这是一个Python程序,因此编辑器将使用Python解释器来运行它。 Python解释器读取整个程序,确定其中每个单词的含义。例如,看到单词print时,解释器就会将括号中的内容打印到屏幕,而不会管括号中的内容是什么。
注意:1、python2中不同,print "hello world!" ;
2、python2中要在开头部分加入:#coding=utf-8。
3、python3默认的字符集是Unicode,#python2里面默认的字符集是 ascii。
二、变量
message = "Hello world!"
print(message)
上述代码中,添加了一个名为message的变量。每个变量都存储了一个值——与变量相关联的信息。在这里,存储的值为文本“ Hello world!”。
添加变量导致Python解释器需要做更多工作。处理第1行代码时,它将文本“ Hello world!”与变量message关联起来;而处理第2行代码时,它将与变量message关联的值打印到屏幕。
变量的命名规则:
1、变量名只能包含字母、数字和下划线。变量名可以字母或下划线打头,但不能以数字打头,例如,可将变量命名为message_1,但不能将其命名为1_message。
2、变量名不能包含空格,但可使用下划线来分隔其中的单词。例如,变量名greeting_message可行,但变量名greeting message会引发错误。
3、不要将Python关键字和函数名用作变量名,即不要使用Python保留用于特殊用途的单词。如下图:
好的建议:
1、变量名应既简短又具有描述性。例如, name比n好, student_name比s_n好, name_length比length_of_persons_name好。
2、慎用小写字母l和大写字母O,因为它们可能被人错看成数字1和0。
三、单引号、双引号和三重引号
在Python中,用引号括起的都是字符串,其中的引号可以是单引号,也可以是双引号。甚至是三重引号来表示。
单引号:msg = "I'm Sriba." #有单引号,所以外面用双引号
双引号:'Python comments ues "#".' #有双引号,所以外面用单引号
三引号:'''I'm Sriba, i love "Python".''' #有双引号和双引号,所以外面用三引号
'''
上面的代码是说明单引号、双引号和三引号的
这一段是注释,说明三引号也有多行注释的功能
'''
四、输入input()函数
函数input()让程序暂停运行,等待用户输入一些文本。获取用户输入后, Python将其存储在一个变量中,以方便你使用。
message = input("Tell me something, and I will repeat it back to you: ")
print(message)
函数input()接受一个参数:即要向用户显示的提示或说明,让用户知道该如何做。在这个示例中, Python运行第1行代码时,用户将看到提示Tell me something, and I will repeat it backto you:。程序等待用户输入,并在用户按回车键后继续运行。输入存储在变量message中,接下来的print(message)将输入呈现给用户。
注意:python2中使用raw_input,接收的是一个字符串。
五、if语句
每条if语句的核心都是一个值为True或False的表达式,这种表达式被称为条件测试。 Python根据条件测试的值为True还是False来决定是否执行if语句中的代码。如果条件测试的值为True,Python就执行紧跟在if语句后面的代码;如果为False, Python就忽略这些代码。
简单的 if 语句
if conditional_test:
do something
在第1行中,可包含任何条件测试,而在紧跟在测试后面的缩进代码块中,可执行任何操作。如果条件测试的结果为True, Python就会执行紧跟在if语句后面的代码;否则Python将忽略这些代码。
if-else 语句
经常需要在条件测试通过了时执行一个操作,并在没有通过时执行另一个操作;在这种情况下,可使用Python提供的if-else语句。 if-else语句块类似于简单的if语句,但其中的else语句让你能够指定条件测试未通过时要执行的操作。
sex = input('请输入你的性别:') if sex=='男' or sex=='女':
print('ok的')
else:
print('人妖')
if-elif-else 结构
经常需要检查超过两个的情形,为此可使用Python提供的if-elif-else结构。 Python只执行if-elif-else结构中的一个代码块,它依次检查每个条件测试,直到遇到通过了的条件测试。测试通过后, Python将执行紧跟在它后面的代码,并跳过余下的测试。
score = input('请输入你的分数:')
score = int(score)
if score<60:
print('不及格')
if score>50:
print('hahah')
elif score<50:
print('小傻瓜')
else:
print('-------')
elif score>=60 and score<80:
print('及格')
elif score>=80 and score<90:
print('良好')
else:
print('优秀')
六、循环
循环就是重复替你去干。循环需要指定一个循环结束条件,python提供两个关键字可以直接推出循环。
continue: 结束本次循环,继续进行下一次循环
break: 结束整个循环
pyhon中又两种循环,while循环和for循环。
while 循环
while循环不断地运行,直到指定的条件不满足为止。用while循环的,那么必须得有计数器。
count = 0 #计数器
while count<3:
username = input('plz enter your userame:')
pwd = input('plz enter your pwd:')
if username=='nhy' and pwd=='123456':
print('欢迎光临')
continue
else:
print('账号/密码错误!')
count+=1
else:
print('错误次数过多')
for循环
for循环能够帮助我们做很多重复性的事情,比如批量命名、批量操作等。可以把for循环所做的事情概括成一句话就是:于...其中的每个元素,做...事情。
import random
random_num = random.randint(1,1000)
for i in range(3):
num = int(input('请输入你猜的数字:'))
if num>random_num:
print('你猜的太大了')
elif num<random_num:
print('太小了')
else:
print('恭喜你猜对了,答案是:',random_num)
break
循环应用猜数字游戏:
import random
random_num = random.randint(1,1000)
# print(random_num)
while True:
num = int(input('请输入你猜的数字:'))
if num>random_num:
print('你猜的太大了')
elif num<random_num:
print('太小了')
else:
print('恭喜你猜对了,答案是:',random_num)
break
七、字符串格式化
什么是格式化输出呢,就是说把你的输出都格式化成一个样子的,比如说登录的欢迎信息,都是welcome to login,Marry. 每个用户登录都是这样欢迎,但是每个用户的用户名都是一样的,你不能一个用户就写一行代码吧,这就需要用到格式化输出了,有三种方式,第一种是用“+”连接,直接把输出的字符串和变量连接起来就可以了;第二种是用占位符,占位符有常用的有三种,%s、%d和%f,%s是后面的值是一个字符串,%d是后面的值必须是一个整数,%f后面是小数;第三种是使用{}和fromat方法,这三种呢,官方推荐是使用format方法,不推荐使用第一种,第一种用加号的,会在内存里面开辟多个内存空间,而后面两种是只开辟一块内存空间,使用方式如下:
name = input('请输入你的名字:')
print('你的名字是'+name) #使用加号连接
print('你的名字是%s'%name)#使用占位符
print('你的名字是{your_name}'.format(your_name=name)) #使用format格式化输出,{}里面的名字可以随便写但是要和后面的format中的名字保持一致,然后再把你前面定义的变量写到等号后面就可以了。
age = 18
print('我的名字是%s,年龄是%d岁.'%(name,age))#这种是里面有多个格式化内容的,前面那个是字符串,后面这个是整数,多个变量的后面跟值的时候必须要加上括号
python学习笔记(一)-基础知识的更多相关文章
- Python学习笔记——1——基础知识
1.1.变量和算法 python语言很类似人类语言,变量不需要定义类型.比如: 整型 字符串类型 数组 Java int a=12 String s="test" String[] ...
- MyBatis:学习笔记(1)——基础知识
MyBatis:学习笔记(1)--基础知识 引入MyBatis JDBC编程的问题及解决设想 ☐ 数据库连接使用时创建,不使用时就释放,频繁开启和关闭,造成数据库资源浪费,影响数据库性能. ☐ 使用数 ...
- C#学习笔记(基础知识回顾)之值类型与引用类型转换(装箱和拆箱)
一:值类型和引用类型的含义参考前一篇文章 C#学习笔记(基础知识回顾)之值类型和引用类型 1.1,C#数据类型分为在栈上分配内存的值类型和在托管堆上分配内存的引用类型.如果int只不过是栈上的一个4字 ...
- C#学习笔记(基础知识回顾)之值传递和引用传递
一:要了解值传递和引用传递,先要知道这两种类型含义,可以参考上一篇 C#学习笔记(基础知识回顾)之值类型和引用类型 二:给方法传递参数分为值传递和引用传递. 2.1在变量通过引用传递给方法时,被调用的 ...
- C#学习笔记(基础知识回顾)之值类型和引用类型
一:C#把数据类型分为值类型和引用类型 1.1:从概念上来看,其区别是值类型直接存储值,而引用类型存储对值的引用. 1.2:这两种类型在内存的不同地方,值类型存储在堆栈中,而引用类型存储在托管对上.存 ...
- Quartz学习笔记:基础知识
Quartz学习笔记:基础知识 引入Quartz 关于任务调度 关于任务调度,Java.util.Timer是最简单的一种实现任务调度的方法,简单的使用如下: import java.util.Tim ...
- Python学习笔记之基础篇(-)python介绍与安装
Python学习笔记之基础篇(-)初识python Python的理念:崇尚优美.清晰.简单,是一个优秀并广泛使用的语言. python的历史: 1989年,为了打发圣诞节假期,作者Guido开始写P ...
- Python学习笔记之基础篇(二)python入门
一.pycharm 的下载与安装: 使用教程:https://www.cnblogs.com/jin-xin/articles/9811379.html 破解的方法:http://xianchang. ...
- .net学习笔记---xml基础知识
一.XML简介 XML是一种标记语言,用于描述数据,它提供一种标准化的方式来来表示文本数据.XML文档以.xml为后缀.需要彻底注意的是XML是区分大小写的. 先从一个简单的XML例子来了解下xml基 ...
随机推荐
- 51单片机—LCD1602显示模块
文章目录 - 什么是LCD1602 - 如何操作LCD1602 - 上代码 - 什么是LCD1602 LCD:Liquid Crystal Display-液晶显示器,简称LCD,其主要显示原理是以电 ...
- MySQL Mac 终端环境变量配置
MySQL Mac 终端环境变量配置 这里安装的是mysql-8.0.26-macos11-x86_64,M1Mac,原本打算安装arm64版本,但一直安装不了,就装了x86版本 安装完成MySQL之 ...
- 对象 绑定关系 隐藏属性 property 继承
绑定方法两种: 1.绑定给对象的 class Student(): country = 'CHINA' def __init__(self,name,age): self.name = name se ...
- NOIP 模拟 7 考试总结
T1 超级大水题,用 \(kmp\) 和 \(hash\) 均能过,但都忘了,结果只打了个暴力.难受.板子题,题解就不放了 Code #include<bits/stdc++.h> #de ...
- 12.SpringMVC之拦截器
1.拦截器概述 1.1 什么是拦截器? Spring MVC中的拦截器(Interceptor)类似于Servlet中的过滤器(Filter),它主要用于拦截用户请求并作相应的处理.例如通过拦截器可以 ...
- Python环境变量配置
第一步:下载Python安装包 在Python的官网 www.python.org 中找到最新版本的Python安装包,点击进行下载,请注意,当你的电脑是32位的机器,请选择32位的安装包,如果是64 ...
- java基本数据类型转换字符串
1.基本数据类型转换为字符串 int t1 = 2; String t2 = Integer.toString(t1); 2.字符串转换为基本数据类型 int t3 = Integer.parseIn ...
- 网络操作系统VyOS之NAT实践
本文基于 网络操作系统VyOS应用实践(四) 修改,完善了实验细节及1-to-1 NAT部分. NAT NAT即网络地址转换,最常见的就是各种虚拟机工具的NAT模式,让虚拟机以宿主的网络地址与外网通讯 ...
- python·那些不值钱的经验
时间:2018-11-22 整理:byzqy python读写文本文件 1 # -*- coding: utf-8 -*- 2 3 def read_file(file): 4 with open(f ...
- C++之常指针,指针常量,函数指针,const用法总结
1.const char *p,char const *p,char * const p 对于C++而言,没有const * 修饰符,所以,const只可以修饰类型或者变量名.因而const char ...