Python自学之路---Day01

注释

注释是对一段代码的解释和说明,可提高程序代码的可读性,让人能够更加轻松的阅读理解代码。

单行注释

Python中单行注释是以#开头的,单行注释可以单独占据一行也可以跟在代码后面,如果注释占据单独一行,我们习惯在#后面加一个空格然后再写上相应的注释;如果注释跟在代码后面,我们先空两个再加上#然后再空一格,最后再写上相应的注释。

# 这是单行注释
print("Hello world!") # 这是跟在代码后面的注释

多行注释

Python中多行注释使用三个单引号(''')或者三个双引号(""")来标记的,而实际上这是多行字符串的书写方式,并不是Python提倡的多行注释方式。

"""
这里面写多行注释的内容,其实这是一个多行字符串,
可以换行
"""

print()函数

print()用于向屏幕打印输出

语法

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)

参数

*objects:复数,表示可以一次输出多个对象。输出多个对象时,需要用 , 分隔。

sep = ' ' :设置用什么字符来分隔多个对象,默认是一个空格

end = '\n':设置结尾字符,默认是一个换行符(\n),我们可以换成其它字符,这样在输出完后就不会换行了

实例

print('I am a good man')
print("123", "456")
print("123", "456", sep="+")
print("测试1")
print("测试2")
print("测试1", end=",")
print("测试2", end=",")

输出

I am a good man

123 456

123+456

测试1

测试2

测试1,测试2,

input()函数

接受一个标准输入数据,返回类型为字符串

语法

input([prompt])

参数

[prompt]:相应的提示信息

实例

age = input('请输入你的年龄:')
print(age)
print(type(age))

输出

请输入你的年龄:18

18

<class 'str'>

查看Python的关键字

在Python中,具有特殊功能的标识符称为关键字。关键字是Python语言自己已经使用的了,不允许开发者自己定义和关键字相同名字的标识符。

代码

import keyword

print(keyword.kwlist)

输出

['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

变量与常量

变量

变量,是用于在内存中存放程序数据的容器

如何定义一个变量

变量名 = 值

name = "小明"
age = 21

变量命名规则

数字,字母,下划线, 任意组合,数字不能开头,python 的关键字不能用,变量名尽量有意义。

推荐变量命名使用驼峰式

如何查看变量类型

name = "小明"
age = 21
print(type(name))
print(type(age))

输出

<class 'str'>

<class 'int'>

如何查看变量首地址

name = "小明"
age = 21
print(id(name))
print(id(age))

输出

38542768

8791321846800

注意:这里不同电脑输出结果一般不同

常量

常量,即指不变的量 , Python中没有专门定义常量的方式,通常使用大写变量名表示 ,仅仅是一种提示效果

NAME = 'tony'  # 本质还是变量

数字类型

分类

数字类型可分为:整数,浮点数与复数

整数 :Python可以处理任意大小的整数,当然包括负整数,在程序中的表示和数学的写法一致

浮点数:浮点型由整数部分与小数部分组成,浮点数运算可能会有四舍五入的误差

复数 :实部和虚部组成,可以用a+bj表示

类型转换

浮点数--->整数

整数---->浮点数

字符串--->数字 注意:只有所有字符所表达的意思与数学中意思一致时才可以进行转换

print(int(1.9))  # 将浮点数转换成整数
print(float(1)) # 将整数转换成浮点数
print(int("123")) # 将字符串转换成整数
print(float("12.3")) # 将字符串转换成小数
print(int("+123")) # +123字面表达的意思就是正整数123,所以将字符串转换成整数

结果

1

1.0

123

12.3

123

内置数学函数

abs(x)函数

返回x的绝对值

print(abs(-10))

结果

10

max(x, y)与min(x, y)函数

返回x, y中的最大或最小值

print(max(10, 20))
print(min(10, 20))

结果

20

10

pow(x, y)函数

返回x的y次方的值

print(pow(2, 5))

结果

32

round(x, n=0)函数

返回x的四舍五入值,默认n=0,即保留到整数

print(round(3.556))
print(round(3.556, 2))

结果

4

3.56

math库

导入math库

import math

math.ceil(x)与math.floor(x)函数

math.ceil(x):x向上取整

math.floor(x):x向下取整

print(math.ceil(18.1))
print(math.floor(18.1))

结果

19

18

math.sqrt(x)函数

返回x开方后的值

print(math.sqrt(16))

结果

4.0

random库

导入random库

import random

random.choice(x)函数

从序列x的元素中随机挑选一个元素

print(random.choice([1, 3, 5, 7, 9, "aa"]))
print(random.choice(range(5))) # range(5) = [0, 1, 2, 3, 4]
print(random.choice("sunck")) # "sunck" = ['s', 'u', 'n', 'c', 'k']

结果

1

3

s

注意:每次返回结果不一定相同

random.randrange(start=0, stop, step=1)函数

从给定的范围随机返回一个值,默认范围开始是0,步长是1

print(random.randrange(1, 100, 2))  # 返回[1,100)中的随机数,步长是2,所以返回的全是奇数

结果

7

注意:每次返回结果不一定相同

random.random()函数

返回[0,1)之间的一个随机数

print(random.random())

结果

0.5349369878922869

注意:每次返回结果不一定相同

运算符与表达式

表达式:由变量,常量和运算符组成的式子

算术运算符:+ - * / % ** //

**注意:****是幂 //是取整,在Python中/不是其他语言中的整除

复合运算符:+= -= *= /= %= **= //=

注意:在Python中没有自加自减运算,即没有a++,--a这些

if 语句

格式

当表达式的值为真时,才执行缩进后的语句,否则不执行或者执行else后缩进的语句

# if语句
if 表达式:
语句
# if-else语句
if 表达式:
语句1
else
语句2

if练习

# 1.从控制台输入一个三位数,如果是水仙花数就打印“是水仙花数”,否则打印“不是水仙花数”# 水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)。
number = int(input('请输入一个三位数:'))
num1 = number // 100
num2 = (number % 100) // 10
num3 = number % 10
if num1**3 + num2**3 + num3**3 == number:
print('是水仙花数')
else:
print('不是水仙花数')

# 2.从控制台输入一个五位数,如果是回文数就打印“是回文数”,否则打印“不是回文数”
number = int(input('请输入一个五位数:'))
if number // 10000 == number % 10 and number % 10000 // 1000 == number % 100 // 10: print('是回文数')
else:
print('不是回文数')

# 3.从控制台输入两个数,输出较大者(不能用max()和min())
max_num = 0
number1 = int(input('请输入第一个数字:'))
if max_num < number1:
max_num = number1
number1 = int(input('请输入第二个数字:'))
if max_num < number1:
max_num = number1
print('The max number is', max_num)

# 4.从控制台输入三个数,输出较大者(不能用max()和min())
max_num = 0
number1 = int(input('请输入第一个数字:'))
if max_num < number1:
max_num = number1
number1 = int(input('请输入第二个数字:'))
if max_num < number1:
max_num = number1
number1 = int(input('请输入第三个数字:'))
if max_num < number1:
max_num = number1
print('The max number is', max_num)

Python自学之路---Day01的更多相关文章

  1. Python自学之路---Day13

    目录 Python自学之路---Day13 常用的三个方法 匹配单个字符 边界匹配 数量匹配 逻辑与分组 编译正则表达式 其他方法 Python自学之路---Day13 常用的三个方法 1.re.ma ...

  2. Python自学之路

    2020年春节,受新型冠状病毒影响,整个春节假期,全国人民都在恐慌之中,为了避免大家上班相互传染,公司号召国家政策,开始上班日期延迟,在家呆的实在太无聊,突然感觉自己不能浪费这美好的时光,决定学习Py ...

  3. 我的Python自学之路-003 字符串的知识

    '''字符串是以引号或者单引号括起来的任意文本,例如"123","asdfjk",'adfa'引号或者单引号,只是一种表示方法,并不是字符串的一部分如果字符串本 ...

  4. python 自学之路-Day Two

    Day1补充部分 模块初识 模块就是由其他人写好的功能,在程序需要的时候进行导入,直接使用,也叫库. 库有标准库和第三方库,所谓标准库,就是不需要安装就可以直接使用的,自带的:第三方库,就是需要进行下 ...

  5. python 自学之路-Day one

    一.Python介绍 创始人吉多范罗苏姆(龟叔),脚本解释程序 应用领域广,数据分析.组件集成.网络服务.图像处理.数值计算和科学计算等. 主要应用领域: 云计算:OpenStack: WEB开发:经 ...

  6. Python学习之路——Day01

    Day01 一.编程和编程语言 编程语言是人与计算机之间交流沟通的介质 编程就是人实现通过让计算机实现动作的文件 二.计算机的组成 1.控制器:负责控制指挥计算机硬件运行 2.运算器:负责数学与逻辑运 ...

  7. python复习之路-Day01

    数据类型初识 1.数字 2 是一个整数的例子.长整数 不过是大一些的整数.3.23和52.3E-4是浮点数的例子.E标记表示10的幂.在这里,52.3E-4表示52.3 * 10-4.(-5+4j)和 ...

  8. Python自学之路——自定义简单装饰器

    看了微信公众号推送的一道面试题,发现了闭包的问题,学习时间短,从来没有遇到过这种问题,研究一下. Python函数作用域 global:全局作用域 local:函数内部作用域 enclosing:函数 ...

  9. python开发之路-day01

    1.Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为A ...

随机推荐

  1. oracle根据一张表更新另外一张表

    知道是两张表进行更新,之前作过mysql的,直接就写了: update a,b set a.code = b.code wehre a.id = b.id 然后就报错了,上网查了下知道oracle不能 ...

  2. 数据库建模工具pd的使用

  3. python中groupby函数详解(非常容易懂)

    一.groupby 能做什么? python中groupby函数主要的作用是进行数据的分组以及分组后地组内运算! 对于数据的分组和分组运算主要是指groupby函数的应用,具体函数的规则如下: df[ ...

  4. Unity 脚本中的update,fixedupdate,lateupdate

    先放着 有功儿夫再来整理 https://www.cnblogs.com/fly-100/p/3777731.html https://www.cnblogs.com/hont/p/5184802.h ...

  5. docker 构建php-fpm IMages(dockerfile)

    好久没写blog   做什么?   复习nginx  zabbix  docker-compos mariadb  学习 jenkins ansible ELK  k8s (kubeadm)  好了也 ...

  6. UVA - 10891 Game of Sum (区间dp)

    题意:AB两人分别拿一列n个数字,只能从左端或右端拿,不能同时从两端拿,可拿一个或多个,问在两人尽可能多拿的情况下,A最多比B多拿多少. 分析: 1.枚举先手拿的分界线,要么从左端拿,要么从右端拿,比 ...

  7. 印度第一颗CPU横空出世!阵势庞大

    我们忙着推进国产芯片的同时,隔壁的印度也没闲着.作为印度顶级高校的印度理工学院(IIT)之马德拉斯校区已经发布了其首颗处理器“Shakti”(代表女性力量的印度神话人物)的SDK软件开发包,并承诺会很 ...

  8. POJ 1256:Anagram

    Anagram Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 18393 Accepted: 7484 Description ...

  9. 【Leetcode】交替打印FooBar

    [问题]我们提供一个类: class FooBar { public void foo() { ; i < n; i++) { print("foo"); } } publi ...

  10. 开源DDD设计模式框架YMNNetCoreFrameWork第6篇-.net Core Logging和Nlog结合

    源码地址:https://github.com/topgunymn/YMNNetCoreFrameWork 遇到的坑:使用了Nlog以后,.NETcore自带的日志等级不起作用,只有nlog配置配置文 ...