🚩
Cyber Explained
  • WHOAMI
  • Technologies
    • Docker
      • Setup Docker
      • Terminology
      • Docker Hub
      • Docker Images
      • Docker Containers
      • Working with Containers
      • Virtualization vs Containerization
      • Nutshell
      • Troubleshoot
    • Android Application
      • Application File Structure
      • Layout and Resources for UI
      • Activities
      • Intents
      • Activity lifecycle and state
      • Implicit intents
    • Active Directory
      • Attacking Active Directory: 0 to 0.9
      • Resources
    • Kerberos
  • RED TEAMING
    • Attacking Kerberos
      • User Enum and Brute Force
      • AS-REP Roasting
      • Kerberoasting
    • MITRE ATT&CK
    • Resources
  • PenTesting
    • Android Pentesting
      • Re-Build App
      • Using Frida on Android without root
    • Web Pentesting
      • XSS
      • SQLi
      • Authentication Vulnerabilities
      • Session Security
      • CSRF
      • Path Traversal
      • File Inclusion
      • Business Logic Vulnerabilities
      • HTTP Host header attacks
      • SSRF
      • HTTP Request Smuggling
      • OS command injection
      • Access control vulnerabilities
    • OWASP Testing Guide
      • 1.0 Information Gathering
      • 2.0 Configuration and Deployment Management Testing
      • 3.0 Identity Management Testing
      • 4.0 Authentication Testing
      • 5.0 Authorization Testing
      • 6.0 Session Management Testing
      • 7.0 Input Validation Testing
      • 8.0 Testing for Error Handling
      • 9.0 Testing for Weak Cryptography
      • 10.0 Business Logic Testing
      • 11.0 Client-side Testing
      • 12.0 API Testing
  • Programming
    • Python
      • Hello World !
        • Variables and Data Types
        • Lists, Tuple, Sets and Dictionaries
        • If Statement
        • While Loops
        • For Loops
        • Functions
        • Classes and Objects
        • Creating Modules
        • Creating Packages
        • Exception Handling
      • System Pogramming
        • File Handling
        • OS Interaction with OS Library
        • Multithreading
        • Signals
        • Subprocess
        • Code Examples
      • Network Programming
        • Socket Programming
        • Packet Injection with Raw Sockets
        • SocketServer Framework
        • Packet Sniffing with Scapy
        • Creating a Web Server
        • Packet Injection with Scapy
        • Packet Sniffing with Raw Sockets
        • Programming with Scapy
  • Operating Systems
    • Windows*
    • Linux
      • System Structure
      • VI Text Editor
      • Working with the Linux Shell
      • Managing Users and Groups
      • Managing Files and Directories
  • Networks
    • Page 1
Powered by GitBook
On this page
  • What's Variable
  • Variable Types
  • Operation on Variables
  • String Formatting
  • Memory Location
  • Casting
  • Get the Type
  • Single and Double Quotes
  • Case-Sensitive
  1. Programming
  2. Python
  3. Hello World !

Variables and Data Types

What's Variable

Variables are containers for storing data values.

Python has no command for declaring a variable.

A variable is created the moment you first assign a value to it.

Variables do not need to be declared with any particular type, and can even change type after they have been set.

Types are only associated with objects of variables

Variable Types

Strings

# define variable
name = "Ayman"
print(name)        
Output: Ayman
# new line
name = "Ayman\nAyman" 
print(name)        
Output: Ayman
          Ayman
# print \n in output -raw string-
name = r'Ayman\nAyman'  
print(name)        
Output: Ayman\nAyman
# unicode string
name = u'Ayman'
# convert unicode to string  
str(name)
# convert string to unicode
unicode(name) 
# add formating
name="""
Ayman
        Ayman
"""
print(name)
Output:
Ayman
	Ayman

Numbers

x = 1    # int
y = 2.8  # float
z = 1j   # complex

Operation on Variables

String Operations

  • Strings are immutable

  • Concatenation var1 + var2 = 'var1var2' var1 + '' +var2 = 'var1 var2'

  • Repeated sequence buffer = "A"*100

  • Slicing string[start:end:step]

  • int to string int("100") Output: 100

  • string.find(value)

  • string.replace(old_value, new_value)

Numbers Operations

normal as other languages

x**y (x power y)

String Formatting

Option #1: %-formatting

name = "Ayman"
age = 22
print("Hello, %s." % name)
Output: 'Hello, Ayman.'
print("Hello, %s. You are %s." % (name, age))
Output: 'Hello Ayman. You are 22.'

Option #2: str.format()

name = "Ayman"
age = 22
print("Hello, {}. You are {}.".format(name, age))
Output: 'Hello, Ayman. You are 22.'
print("Hello, {1}. You are {0}.".format(age, name))
Output: 'Hello, Ayman. You are 22.'

Memory Location

x = 10
id(x)                  # Output: 9789280
hex(id(x))             # Output: '0x955f60'
name.__repr__          # Output: <method-wrapper '__repr__' of int object at 0x955f60>

Casting

If you want to specify the data type of a variable, this can be done with casting.

x = str(10)    # x will be '10'
y = int(10)    # y will be 10
z = float(10)  # z will be 10.0

Get the Type

You can get the data type of a variable with the type() function.

x = 10
y = "Ayman"        
print(type(x))        # <class 'int'>
print(type(y))        # <class 'str'>

Single and Double Quotes

both are the same

Case-Sensitive

Variable names are case-sensitive.

PreviousHello World !NextLists, Tuple, Sets and Dictionaries

Last updated 3 years ago

and a lot more ... check

manual