python入门-01
Posted 快乐崇拜234
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python入门-01相关的知识,希望对你有一定的参考价值。
正文在下面,先打个广告:
Python入门(一)-- HelloWord
HelloWord
程序代码:
print('Hello Word!')
print(' 1 + 2 =', 1 + 2)
a = 5*6
print(a)
输出:
Hello Word!
1 + 2 = 3
30
输入input:
name = input('请输入姓名:')
print('hello', name)
结果:
请输入姓名:tom
hello tom
通用语法
- 注释符号:#
- python没有大括号,是通过缩进来表示代码块的,通常使用4个空格来进行缩进
- python大小写敏感
数据类型和变量
a = 0xabc
print(a)
print(a + 2)
输出结果为:
2748
2750
注:允许直接使用科学记数法进行表示:
a = 1.23e-9
print(a+2)
输出:2.00000000123
指用'
或"
括起来的任意字符,与js有些相似。使用\\
表示转义。为了简化,python允许使用r''
表示不转义
print('adsfas')
print('adsf"as')
print('a\\'"s')
print(r'a\\'"s')#不转义
print('---------')
print('htgfy\\nhus')
输出:
adsfas
adsf"as
a'"s
a\\'"s
---------
htgfy
hus
布尔值有两个True
,False
。并且可以进行and
,or
,not
运算
注意:
- python中的变量和java一样,是引用
- python是动态语言,变量可以是任意值
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wByM5xMw-1612254100919)(index_files/21500218.png)]
在Python中,通常用全部大写的变量名表示常量:PI = 3.14159265359
。但事实上PI
仍然是一个变量,Python根本没有任何机制保证PI
不会被改变,所以,用全部大写的变量名表示常量只是一个习惯上的用法,如果你一定要改变变量PI
的值,也没人能拦住你。
/
计算结果是浮点数//
计算结果是整数%
取余数
10 / 3 = 3.3333333333333335
9 / 3 = 3.0
10 // 3 = 3
9 // 3 = 3
10 % 3 = 1
9 % 3 = 0
字符串及编码
Python提供了ord()
函数获取字符的整数表示,chr()
函数把编码转换为对应的字符
print(ord('吃')) #获取数字表示
print(chr(21507)) #数字转化成字符
print('吃'.encode()) #转化成字节数组,编码默认是utf-8【可见,一个汉字的utf-8编码占3个字节】
print(b'\\xe5\\x90\\x83'.decode()) #将字节数组转化成字符(读取文件或者网络流时使用),解码默认是utf-8
输出:
21507
吃
b'\\xe5\\x90\\x83'
吃
- 一般来说,我们都会将整个项目设置成utf-8编码。python文件头通常会写以下两句:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
第一行注释是为了告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释;
第二行注释是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。但是也要保证你的IDE是使用utf-8编码编写的代码才行。
字符串格式化输出
print('hello %s。' % 'a')
print('hello %s, good %s,你欠款%d.元' % ('a', 'b', 100))
输出:
hello a.
hello a, good b,你欠款100.元
占位符 | 含义 |
---|---|
%d | 整数 |
%f | 浮点数 |
%s | 字符串 |
%x | 十六进制整数 |
list 和 tuple
- list
代码 | 结果 |
---|---|
a = [‘a’, ‘b’, ‘c’] | |
print(a) | [‘a’, ‘b’, ‘c’] |
print(a[2])#下标从0开始 | c |
print(a[-1])#倒序输出 | c |
print(len(a)) | 3 |
a.append(‘d’) | 是 |
print(a) | [‘a’, ‘b’, ‘c’, ‘d’] |
a.pop(2) | 是 |
print(a) | [‘a’, ‘b’, ‘d’] |
- tuple
定义classmates = ('Michael', 'Bob', 'Tracy')
.一旦定义内容不可改变,但是如果里面是list或其他数据等,其所包含的list还是可以改变的,因为这里不可改变的是引用
定义tuple:a = ('a', 'sf' , [1,2,3])
执行输出如下:
代码 | 结果 |
---|---|
print(a) | (‘a’, ‘sf’, [1, 2, 3]) |
print(a[2]) | [1, 2, 3] |
print(a[2][2]) | 3 |
a[2][2] = 100 | |
print(a[2][2]) | 100 |
条件判断
a = input('请输入年龄:')
a = int(a) #input输入的是字符串,这里将其转化成数字int
if param > 0:
return True
elif param < 0:
return False
else:
return "0"
运行结果:
请输入年龄:100
True
循环
- for
sum = 0 ;
for i in list(range(101)):
sum += i
print(sum)
结果5050
- while
sum, i = 0, 0
while i < 101:
sum += i
i = i + 1
print(sum)
结果5050
dict
相当于java里的map
定义dic = "name": "tom", "age": 10
代码 | 结果 |
---|---|
print(dic) | ‘name’: ‘tom’, ‘age’: 10 |
print(dic[‘name’])#取值 | tom |
print(dic.get(‘agess’, -1))#取值.没有值则赋值为0-1 | -1 |
print(dic.get(‘agess’))#取值。没有对应的key,则返回None | None |
print(‘name’ in dic)#判断key是否存在 | True |
dic[‘name’] = ‘cat’#修改赋值 | |
print(dic) | ‘age’: 10, ‘name’: ‘cat’ |
print(dic.pop(‘name’))#删除一个元素,返回删除的值 | cat |
print(dic) | ‘age’: 10 |
注意:
dict内部存放的顺序和key放入的顺序是没有关系的**
dict的key必须是不可变对象
因为dict和java里的 map一样,通过hash算法计算存储位置,所以要保证每次计算的hash值都是一样的。
dic = "name": "tom", [1, 2]: 10
结果:
Traceback (most recent call last):
File "E:/workspace/python/HelloWord/HelloWord.py", line 1, in <module>
dic = "name": "tom", [1, 2]: 10
TypeError: unhashable type: 'list'
和list比较,dict有以下几个特点:
- 查找和插入的速度极快,不会随着key的增加而变慢;
- 需要占用大量的内存,内存浪费多。
而list相反:
- 查找和插入的时间随着元素的增加而增加;
- 占用空间小,浪费内存很少。
set
无序和无重复元素的集合
定义a = set([1,2,3,4,3,3,3])
代码 | 结果 |
---|---|
print(a) | 1, 2, 3, 4 |
a.add(3);print(a) # 添加 | 1, 2, 3, 4 |
a.remove(2);print(a) # 删除 | 1, 3, 4 |
print(2 in a) # 判断是否存在 | False |
set还可以取并集和交集:
a = set([1,2,3,4,3,3,3])
b = set([61,2,3])
print(a | b) # 并集
print(a & b) # 交集
结果:
1, 2, 3, 4, 61
2, 3
参考: 感谢廖雪峰的Python教程
以上是关于python入门-01的主要内容,如果未能解决你的问题,请参考以下文章