Python_day1 Learning record
Python Day1 Learning record(python第一天学习记录)
一、ptyhon安装
windows
、下载安装包
https://www.python.org/downloads/
、安装
默认安装路径:C:\python27
、配置环境变量
【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【Python安装目录追加到变值值中,用 ; 分割】
如:原来的值;C:\python27,切记前面有分号
linux、Mac
无需安装,原装Python环境 ps:如果自带2.,请更新至2.
二、Hello World程序
在linux下创建一个文件叫hello.py,并输入
print("Hello World!")
指定解释器
上一步中执行python hello.py时,明确的指出hello.py脚本由python解释器来执行,
如果想要类似执行shell脚本一样执行python脚本,那么久需要在hello.py文件头部指定解释器,如下:
#!/usr/bin/env python
print("Hello World!")
三、变量\字符编码
变量用于存储在计算机程序中引用和操作的信息。它们还提供了一种用描述性名称对数据进行标记的方法,这样我们的程序就可以更清楚地被读者和我们自己理解。把变量看作容纳信息的容器是有帮助的。他们唯一的目的是在内存中标记和存储数据。然后可以在整个程序中使用这些数据。
声明变量
#_*_coding:utf-8_*_ name = "abu Zhang"
上述代码声明了一个变量,变量名为: name,变量name的值为:"abu Zhang"
变量定义的规则:
- 变量名只能是字母、数字或下划线的任意组合
- 变量名的第一个字符不能是数字
- 以下关键字不能声明为变量名
【and, as, assert, class, continue, dep, dell, elip, else, except, exec, fnally, for, from, global, ip, import, in, is, lambda, not, or ,pass, print, raise, return, try, while, yield】
变量的赋值
name = "abu Zhang" name2 = name
print(name,name2) name="jack" print("what is the value of name2 now?")
四、字符编码
python解释器在加载.py文件中的代码时,会对内容进行编码(默认ascill码)
ASCII(American standard code for information interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用8位来表示一个字节,即:2**8 = 256-1,所以,ASCII码最多只能表示255个符号。

关于中文
为了处理汉子,程序员设计了用于简体中文的GB2312和用于繁体中文的big5.
GB2312(1980年)一个收录了7445个字符,包括6763个汉子和682个其它符号。汉子区的内码范围高字节从B0-F7,低字节从A1-FE,占用的码位是72*94=6768,。其中有5个空位是D7FA-D7FE。
五、用户输入
#Author:abu zhang
#_*_coding:utf-8_*_
name = input("what is your name?")
print("Hello ", name)
输入密码时,如果想要不可见,需要利用getpass模块中的getpass方法,即:
#!/usr/bin/env python
# -*- coding: utf-8 -*- import getpass # 将用户输入的内容赋值给 name 变量
pwd = getpass.getpass("请输入密码:") # 打印输入的内容
print(pwd)
六、模块初识
Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有想要的python库支持,以后的课程中会深入讲解常用到的各种库,现在,我们先来象征性的学2个简单的。
sys
#!/usr/bin/env python
# -*- coding: utf-8 -*- import sys print(sys.argv) #输出
$ python test.py helo world
['test.py', 'helo', 'world'] #把执行脚本时传递的参数获取到了
os
#!/usr/bin/env python
# -*- coding: utf-8 -*- import os os.system("df -h") #调用系统命令
七、数据类型初识
1、数字
2是一个整数的例子
长整数不过是大一些的整数。
3.23和52.3E-4是浮点数的例子。E标志表示10的幂。在这里,52.3E-4表示52.3*10-4。
(-5+4j)和(2.3-4.6j)是复数的例子,其中-5,4位实数,j为虚数,数学中表示复数是什么?
int(整型)
在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
在64位机器上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
3、字符串
“hello world”
万恶的字符串拼接:
python中的字符串在C语言中体现为是一个字符数组,每次创建字符串时候需要在内存中开辟一块连续的空,并且一旦需要修改字符串的话,就需要再次开闭空间,万恶的+号每出现一次就会在内存中重新开辟一块空间。
字符串格式化输出
name = "abu"
print("i am %s ",name) #输出:i am abu
PS:字符串是%s;整数%d;浮点数%f
字符串常用功能:
- 移除空白
- 分割
- 长度
- 索引
- 切片
4、列表
创建列表:
name_list = ['alex','abu','jack']
或
name_list = list(['alex','abu','jack'])
基本操作:
- 索引
- 切片
- 追加
- 删除
- 长度
- 循环
- 包含
5、元组(相当于不可改变的列表)
创建元组:
ages = (11,22,33,44,55)
或
ages = tuple((11,22,33,44,55))
6、字典(无序)
创建字典:
person = {"name":"abu.zhang","age":""}
或
person = dict({"name":"abu.zhang","age":""})
常用操作:
- 索引
- 新增
- 删除
- 键、值、键值对
- 循环
- 长度
八、数据运算
数学运算:

比较运算:

赋值运算:

逻辑运算:

成员运算:

身份运算:

位运算:

运算符优先级:

更多内容:猛击这里
九、表达式if ... else
场景一、用户登录认证
#提示输入用户名和密码
#验证输入用户名和密码
#如果认证错误,则输出用户名或密码错误
#如果成果,则输出,欢迎,XXX登陆 _username = "abu"
_passwd = "dev.dev." username = input('请输入用户名:')
passwd = input('请输入密码:')
if _username == username and _passwd == passwd:
print("欢迎%s登陆"%(username))
else:
print("你输入的用户名或密码错误,请重新输入。")
场景二、猜年龄游戏
在程序里设定好你的年龄,然后启动程序让用户猜测,用户输入后,根据他的输入提示用户输入的是否正确,如果错误,提示是猜大了还是小了
count = 0
abu_age = 23
while True:
count += 1
abu_age_input = int(input("请输入你猜的岁数:"))
if abu_age == abu_age_input:
print("恭喜你猜对了。")
elif abu_age < abu_age_input:
print("你猜错了,往小了猜试下。")
else:
print("你猜错了,往大了猜试下。")
十、表达式for循环
最简单的循环10次
for i in range(10):
print("loop:",i) loop: 0
loop: 1
loop: 2
loop: 3
loop: 4
loop: 5
loop: 6
loop: 7
loop: 8
loop: 9
需求一:还是上面的程序,但是遇到小于5的循环次数就不走了,直接跳入下一次循环
for i in range(10):
if i<5:
continue #不往下走了,直接进入下一次loop
print("loop:",i)
这里只要使用的是countinue 跳过本次循环,继续下一次循环
需求二:还是上面的程序,但是遇到大于5的循环次数就不走了,直接退出
for i in range(10):
if i>5:
break #不往下走了,直接跳出整个循环
print("loop:",i)
这里只要使用的是break ,i小于5的时候就走,i大于5的时候就退出循环了
十一、while loop
有一种循环叫死循环,一经触发,就运行个天荒地老、海枯石烂。
count = 0
while True:
print('你是风儿我是沙,缠缠绵绵到天涯...',count)
count +=1
其实除了时间,没有什么是永恒的,死loop还是少写好
上面的代码循环100次就退出好吧
count = 0
while True:
print('你是风儿我是沙,缠缠绵绵到天涯...',count)
count +=1
if count == 100:
print('去你妈的风和沙,你们这些脱了裤子是人,穿上裤子是鬼的臭男人。。')
break
回到上面for 循环的例子,如何实现让用户不断的猜年龄,但只给最多3次机会,再猜不对就退出程序。
#!/usr/bin/env python
# -*- coding: utf-8 -*- my_age = 28 count = 0
while count < 3:
user_input = int(input("input your guess num:")) if user_input == my_age:
print("Congratulations, you got it !")
break
elif user_input < my_age:
print("Oops,think bigger!")
else:
print("think smaller!")
count += 1 #每次loop 计数器+1
else:
print("猜这么多次都不对,你个笨蛋.")
Python_day1 Learning record的更多相关文章
- Python Day2 Learning record
一.python初始化模块 Python的强大之处在于他有非常丰富和强大的标准库和第三方库 ...
- USB相关知识
USB基础知识概论 如何实现Linux下的U盘(USB Mass Storage)驱动: How to WriteLinux USB MSC (Mass Storage Class) Driver U ...
- 【编程语言】Matlab 学习记录
title: Matlab Learning Record date: 2020-05-23 20:11:26 author: liudongdong1 img: https://gitee.com/ ...
- Machine Learning
Recently, I am studying Maching Learning which is our course. My English is not good but this course ...
- (转) Deep Learning Research Review Week 2: Reinforcement Learning
Deep Learning Research Review Week 2: Reinforcement Learning 转载自: https://adeshpande3.github.io/ad ...
- (转)WHY DEEP LEARNING IS SUDDENLY CHANGING YOUR LIFE
Main Menu Fortune.com E-mail Tweet Facebook Linkedin Share icons By Roger Parloff Illustration ...
- IMS Global Learning Tools Interoperability™ Implementation Guide
Final Version 1.1 Date Issued: 13 March 2012 Latest version: http://www.imsglobal ...
- Introduction to Machine Learning
Chapter 1 Introduction 1.1 What Is Machine Learning? To solve a problem on a computer, we need an al ...
- (转)The 9 Deep Learning Papers You Need To Know About (Understanding CNNs Part 3)
Adit Deshpande CS Undergrad at UCLA ('19) Blog About The 9 Deep Learning Papers You Need To Know Abo ...
随机推荐
- vue--vant组件库Dialog弹出框
安装vant UI框架: cnpm install vant –-save-dev 导入组件-在main.js里: import Vant from 'vant'; import'vant/lib/v ...
- k个一组翻转链表(java实现)
题目: 给出一个链表,每 k 个节点一组进行翻转,并返回翻转后的链表. k 是一个正整数,它的值小于或等于链表的长度.如果节点总数不是 k 的整数倍,那么将最后剩余节点保持原有顺序. 示例 : 给定这 ...
- 2018-2019-2 网络对抗技术 20165303 Exp1 PC平台逆向破解(BOF实验)
1.实践目的 本次实践的对象是一个名为pwn1的linux可执行文件. 三个实践内容如下: 手工修改可执行文件,改变程序执行流程,直接跳转到getShell函数. 利用foo函数的Bof漏洞,构造一个 ...
- python3读写csv文件
python读取CSV文件 python中有一个读写csv文件的包,直接import csv即可.利用这个python包可以很方便对csv文件进行操作,一些简单的用法如下. 1. 读文件 csv_ ...
- Matlab 奇异值、奇异矩阵、svd函数
奇异值: 奇异值分解法是线性代数中一种重要的矩阵分解法,在信号处理.统计学等领域有重要应用. 定义:设A为m*n阶矩阵,A'表示A的转置矩阵,A'*A的n个特征值的非负平方根叫作A的奇异值.记为σi( ...
- 网盘资源分享:你不知道的JavaScript(上)
链接:https://pan.baidu.com/s/1UEBetOr2Z94oEeu5VsQYXQ 提取码:etts 复制这段内容后打开百度网盘手机App,操作更方便哦
- 从零开始学Python 一
一.安装 1.进入Python官网下载环境:https://www.python.org 2.根据自己的电脑选择安装版本,然后安装即可. 二.运行第一个程序 1.安装完Python,会自带一个编辑器, ...
- Vue项目本地run与build后样式不同,build后样式不生效
今天老大,让我改一个按钮的样式,就是鼠标放在按钮上,改变字体的颜色.觉得小意思啦,不就是:hover吗? 啊...什么鬼?本地run可以,但是build之后并没有生效!!! 我们项目引入的第三方UI库 ...
- 进到页面后input输入框自动获取焦点
<html> <head></head> <body> 用户名:<input type="text" ...
- 面试北京XX数通总结
软件架构师何志丹 1 总括 1.1 面试时间 2019年1月21号. 1.2 公司概况 员工近20人,其中开发人员6人,全部objectarx(C++),全部老 ...