笔记(一)

经典开头:你好,世界!!!

print('hello world!!!')
'''
运行结果:
hello world!!!
'''

from:

《                                              Think Python
       How to Think Like a Computer Scientist》

当你尝试一个新功能时,你应该试着犯错。例如,在程序“Hello, world!”中,如果你省略了一个引号会发生什么?如果两者都不考虑呢?如果你拼写打印错误怎么办?这种实验可以帮助你记住所读的内容;它还有助于调试,因为您可以了解错误消息的含义。宁可现在就故意犯错误,也不要以后偶然犯错误

Whenever you are experimenting with a new feature, you should try to make mistakes. For example, in the “Hello, world!” program, what happens if you leave out one of the quotation marks? What if you leave out both? What if you spell print wrong? This kind of experiment helps you remember what you read; it also helps with debugging, because you get to know what the error messages mean. It is better to make mistakes now and on purpose than later and accidentally.

——————————————————————————————————————

思想:python有很多封装好的代码,给输入,返回输出,很方便。

(图不合适)

P1

自然语言(natural languages)是人们说的语言,例如汉语、英语和法语。 它们不是人类设计的(虽然人们试图在其上强加上一些顺序), 它们自然地演变。

形式语言(formal languages)是由人为了特殊应用设计的。 例如,数学家使用的符号就是形式语言,其特别擅长表示数字和符号直接的关系。 化学家使用形式语言表示分子的化学结构。

编程语言:人类和计算机进行交流的语言    如:c,c++,java,php,python

解释型和编译型: 
    高级语言按程序的执行方式可以分为编译型和解释型两种

    Python是一门解释型的编程语言,因此它具有解释型语言的运行机制。计算机程序,其实就是一组计算机指令集,能真正驱动机器运行的是机器指令,但让普通开发者直接编写机器指令是不现实的,因此就出现了计算机高级语言。高级语言允许使用自然语言(通常就是英语)来编程,但高级语言的程序最终必须被翻译成机器指令来执行。解释性语言执行效率相对较低,平台的依赖性不高。
    编译型语言是指使用专门的编译器,针对特定平台(操作系统)将某种高级语言源代码一次性“翻译”成可被该平台硬件执行的机器码(包括机器指令和操作数),并包装成该平台所能识别的可执行程序的格式,这个转换过程称为编译(Compile )。编译生成的可执行程序可以脱离开发环境,在特定的平台上独立运行。

P2

安装注意事项

官网:https://www.python.org/

1.win10系统操作位数通过“开始-设置-系统-关于”查找,python位数和操作系统位数最好一样,不然之前碰到过未知错误折腾了好久

2.勾选Add Python 3.8 to PATH,将python添加到路径,方便cmd调用

3.勾选Customize installation 记住安装位置

pycharm有破解版

How?

1.交互式编程:输入Python进入交互式环境   >>>print('hello')    适用于临时测试

2.集成开发工具:sublime、pycharm等   代码和结果一起显示

P3

DOS(Disk Operating System)命令

1.cd+目录 切换到指定目录路径  

   cd..  切换到上一级目录

   d:  切换到d盘

  单词较长,按Tab可以自动补全

tip:在地址栏输入cmd可以直接跳到该地址的dos

2.dir 浏览目录

   mkdir 创建新目录    mk:make简写

   rmdir 删除目录        rm:remove简写

3.ipconfig 查看ip地址

4.ping+ip地址  扔数据包

5.exit() 退出

tip:在目录下输入cmd,直接在该目录下运行命令提示符

tip:输入文件名时,输入开头的字母后按Tab键,会自动补全名字。

P4

python重要优点之一:丰富的库

标准库地址:\Python39\Lib  

其他高质量库的下载:

win+r输入cmd打开命令提示符,输入pip,查看pip的使用   (pip:扩展包管理器,安装python自带)

pip install --help查看如何使用install

例:pip install requests(库名)  (request用途:做爬虫时模拟请求) 默认下载最新版本

requests去哪下载?pip默认去python官网大仓库里下载,网站在国外,故下载库时网速较慢。

解决办法:配置国内镜像源     方法:百度搜 'python 国内镜像源'

python国内镜像源 - 叫我大表哥 - 博客园  把国外的库下到本地

pip install requests -i https://pypi.tuna.tsinghua.edu.cn/simple 临时使用

下载的requests包在Python39\Lib\site-packages目录下,第三方下载的东西在放个文件夹

pip install命令 默认下载最新版本

卸载

pip uninstall requests(库名)

pip install 我初学时最常见的问题

WARNING: You are using pip version 21.0.1; however, version 21.1.3 is available. You should consider upgrading via the 'd:\software\python39\python.exe -m pip install --upgrade pip' command. 

解决方法:python -m pip install --upgrade pip -i

后来遇到的问题

P2

注释的重要性

说明:注释是给人看的,机器不运行

各种值代表的意义,什么逻辑能得到值。当时把代码写出来了,觉得很牛,放松一下,三天回来重看会忘记。

变量:可以变换的量,可以理解为带标签的容器,用于存储数据(程序用于处理数据),里面存放的值可以随时发生改变

多次赋值之后,变量名指向新的内存空间

弱类型:变量声明的时候对数据类型不是很严格

compare:

java: int a=100

        float b=9.9

python:  a=100  不用说明是什么值

定义变量的语法:

变量名 = 变量值(=的作用是赋值)

定义变量后可以使用变量名来访问变量值

变量名命名规范

1.以字母或下划线开头,后面可以跟任意数目的字母数字下划线,不能有特殊字符。

2.严格区分大小写

3.不能使用python关键字

4.考虑实际意义,尽量做到见名知意。 

为什么不能数字开头?

若1=188,问1+1如何定义?

weather = "今天天气真好"
print(weather)
print(weather)
'''
运行结果:
今天天气真好
今天天气真好
'''

关键字列表查看

import keyword
print(keyword.kwlist)

 保留字符不需要记,用了会报错。  pycharm中加粗深蓝色字体就是关键字

 命名方法

不建议用这个方法

大驼峰用于面向对象时的类名,如:FirstName

建议用下划线命名,如:money_sum

变量的类型

 

money=9.9
print(money,type(money))
money='9.9元'
print(money,type(money))
money=9
print(money,type(money))

a=10
b=10
c=20
print(a,b,c)

'''
运行结果:
9.9 <class 'float'>
9.9元 <class 'str'>
9 <class 'int'>
10 10 20
'''

前期学的时候知道怎么测类型 ,开发时直接赋值就可以,python自动识别类型

print()函数 
    print(value, ... value, sep=' ', end='\n', file=sys.stdout, flush=False)

    Prints the values(值) to a stream(流), or to sys.stdout by default(默认).
    Optional keyword arguments:
    file:  a file-like object (stream); defaults to the current sys.stdout.
    sep:   string inserted between values, default a space.
    end:   string appended(追加) after the last value, default a newline.
    flush: whether to forcibly flush the stream.

说明print是内置函数

money='1万'
print(type(money))
money="10000"
print(type(money))
money='''1wan'''
print(type(money))
#单双三引号都代表字符串类型
#为什么要双引号?  单双引号的交叉使用
message='乔治说:"想吃冰淇淋"'
print(message)
message="乔治说:'想吃冰淇淋'"
print(message)
#为什么要三引号?  保留格式的字符串输出
message = '''
[淘宝]
    验证码:225327。
您正在使用短信验证码登录功能,
请勿泄露给他人使用。
'''
print(message)
'''
运行结果:
<class 'str'>
<class 'str'>
<class 'str'>
乔治说:"想吃冰淇淋"
乔治说:'想吃冰淇淋'

[淘宝]
    验证码:225327。
您正在使用短信验证码登录功能,
请勿泄露给他人使用。
'''

转义字符\   通常放在字符串里

                   \n  n--newline 换行

                  \t制表符,即4个空格

                  \r 打印头回到行首,覆盖之前内容(回车) IDLE里实现不了此功能

                  \\转义成一个\

print(r'\')  print('sad\')都是不允许的

r' '     r--raw原始的 原样输出字符串内容

print('亲爱的xxx:\n\t请点击链接激活用户:激活用户')
print('乔治说:\'想吃冰淇淋!!\'')
#'""' 或 "''" 都可以
print('乔治说:“想吃冰淇淋!!”')
print('hello')
print(r'hello\py\thon')
#r'' r--raw原始的 原样输出字符串内容
'''
运行结果:
亲爱的xxx:
	请点击链接激活用户:激活用户
乔治说:'想吃冰淇淋!!'
乔治说:“想吃冰淇淋!!”
hello
hello\py\thon
'''
print('hello world!')
name = '小白'
print(name)
#多变量
age = 18
gender = 'boy'
print(name,age,gender)

1.2.4-格式化输出_1&2

引入

person='大圣哥'
address='北京市海淀区中关村'
phone='1585858888'
age=18

print('订单的收件人是:'+person+'收货地址是'+address+'联系方式'+phone)
#'+'号作用:拼接
#'+'号拼接类型得一致 如:字符串+字符串+--- ok | 字符串+int 不行

'''
运行结果:
订单的收件人是:大圣哥收货地址是北京市海淀区中关村联系方式1585858888
'''

存在问题:+号太多,有点麻烦,且容易报错

方式一:使用占位符

此处使用占位符进行字符串格式化输出

person='大圣哥'
address='北京市海淀区中关村'
phone='1585858888'
age=18
print('订单的收件人是:%s,收获地址是:%s,联系方式:%s'%(person,address,phone))
#print('年龄是'+age)  报错 不能是int类型 可改为print('年龄是'+str(age))
#故%s就是str()的简写,强制转换为字符串
print('年龄是'+'age')
'''
运行结果:
订单的收件人是:大圣哥,收获地址是:北京市海淀区中关村,联系方式:1585858888
年龄是age
'''

 常用的格式符号

补:%02d->不足两位时用0补充

       %.1f->浮点数四舍五入保留位小数位

强制转数据类型,不能转就报错

1.2.4-格式化输出_3

练习:

电影名-大侦探皮卡丘  票价-45.95  人数-35

要求输出信息格式如下:

电影:xxx

人数:xxx

单价:xxx

总票价:xxx(小数点后保留2位)

参考答案:

movie='大侦探皮卡丘'
ticket=45.95
count=35
total=ticket*count
#写法1:
message='''
电影:%s
人数:%d
单价:%f
总票价:%.1f
'''%(movie,count,ticket,total)
print(message) #顶格写

#写法2:
print('电影:%s'%movie)
print('人数:%d'%count)
print('单价:%f'%ticket)
print('总票价:%.2f'%total)
'''
运行结果
电影:大侦探皮卡丘
人数:35
单价:45.950000
总票价:1608.2

电影:大侦探皮卡丘
人数:35
单价:45.950000
总票价:1608.25
'''

方式二:使用format函数

name='乔治'
age=3
hobby='玩恐龙!'
money=5.89
message='{}今年{}岁,最喜欢{},有零花钱:{}'.format(name,age,hobby,money)
print(message)
'''
运行结果
乔治今年3岁,最喜欢玩恐龙!,有零花钱:5.89
'''
format是一个字符串中的函数 .表示调用

优点:不限制要显示数据的数据类型

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值