Observe the address in my signature; as of this writing, it starts with a 3. That is a Segwit address. It was generated by me, and is controlled only by me.
For Electrum, the following procedure for generating backward-compatible Segwit 3 addresses is tested by me. See the linked references for more information.
As of version 3.0, released last month, Electrum does support Segwit! You need to generate a new Electrum wallet for this; and if you select Segwit wallet, it will only give you Bech32 addresses. If you want Bech32 addresses, then your problem is solved.
Bech32 addresses are technically superior to old-style addresses; but they are not backward-compatible, so only people with Segwit support will be able to send you money. I myself hope to switch to Bech32 in perhaps 612 months. Future viewers of this post will see my signature showing an address which starts with bc.
To make Electrum give you a wallet of backward-compatible P2WPKH-nested-in-P2SH 3 addresses like the one you see
now in my signature, use the following procedure, which I have tested: (0) Generate a BIP39 seed by some other means. I wrote a short C program for this, which I should polish up and post online;
BIP 39 itself contains a list of implementations, including the
Python reference implementation. (1) In the new wallet dialogue, tell Electrum that you already have a seed. (2) In the seed entry dialogue, click the button for more options and tell Electrum youre using a BIP39 seed. (3) In the next screen, change the derivation path to
m/49'/0'/0'. The only part which needs to be changed is the 49. You may refer to
BIP 49 (as to the 49, the purpose) and
BIP 44 (for the two zeroes, coin type and account) to confirm that I am not giving you bad instructions which will send your money off into the weeds; I mention that because Ive seen Internet posts get this part wrong.